아래 내용은 MYSQL을 기준으로 작성되었습니다
1. Date("날짜")
문자형 형식의 데이터를 날짜 형식으로 변환해준다
날짜의 년, 월, 일 정보만 알려주고 시간은 표시하지 않는다
SELECT DATE("2024-8-2 15:45:20")
실행결과
2. DAYOFWEEK("날짜"), WEEKDAY("날짜")
날짜를 몇 번째 요일인지(무슨 요일인지) 숫자로 나타낸다
- DAYOFWEEK
(1 = 일요일, 2 = 월요일, 3 = 화요일, 4 = 수요일, 5 = 목요일, 6 = 금요일, 7 = 토요일)
- WEEKDAY
(0 = 월요일, 1 = 화요일, 2 = 수요일, 3 = 목요일, 4 = 금요일, 5 = 토요일, 6 = 일요일)
SELECT DAYOFWEEK("2024-08-02 15:45:20"), WEEKDAY("2024-08-02 15:45:20")
실행결과
3. DAYOFMONTH("날짜"), DAYOFYEAR("날짜")
- DAYOFMONTH
해당 달의 몇 번째 날인지를 알려준다
- DAYOFYEAR
해당 년도의 몇 번째 날인지를 알려준다
SELECT DAYOFMONTH("2024-08-02 15:45:20"), DAYOFYEAR("2024-08-02 15:45:20")
실행결과
4. MONTHNAME("날짜"), DAYNAME("날짜")
- MONTHNAME
날짜의 영어식 월 이름을 반환한다
- DAYNAME
날짜의 영어식 요일을 반환한다
SELECT MONTHNAME("2024-08-02 15:45:20"), DAYNAME("2024-08-02 15:45:20")
실행결과
5. YEAR("날짜"), MONTH("날짜"), DAY("날짜")
해당하는 날자의 년, 월, 일을 각각 반환한다
반환된 값은 숫자형식이다
SELECT YEAR("2024-08-02 15:45:20"), MONTH("2024-08-02 15:45:20"), DAY("2024-08-02 15:45:20")
실행결과
6. WEEK("날짜", 시작요일)
해당하는 날짜의 주가 몇 번째 주인지를 반환한다
만약 입력한 인자가 2개인 경우 시작하는 요일을 정해주는 것이다
0이면 시작하는 요일이 일요일,
1이면 시작하는 요일이 월요일이다
아무것도 입력하지 않으면 일요일을 시작하는 요일로 한다
SELECT WEEK("2024-08-02 15:45:20"), WEEK("2024-08-02 15:45:20", 0), WEEK("2024-08-02 15:45:20", 1)
실행결과
7. hour("시간"), minute("시간"), second("시간")
시간 정보에서 시간, 분, 초를 반환해준다
SELECT HOUR("15:45:20"), MINUTE("15:45:20"), SECOND("15:45:20")
실행결과
날짜와 함께 입력해도 동일한 결과가 나온다
8. DATE_FORMAT("날짜", "형식")
날짜를 지정한 형식으로 반환한다
SELECT DATE_FORMAT("2024-08-02 15:45:20", "%Y/%m/%d %h:%i:%s")
실행결과
문제를 풀다가 날짜와 시간을 처리하는 방법을 정리할 필요가 있는 것 같아 정리했다
그런데 생각보다 많은 함수들이 있었고, 날짜의 더하기 빼기 등의 연산을 하는 함수로 따로 존재했다
내용이 너무 길어져 날짜와 시간을 추출하는 함수만 담았지만 훨씬 더 다양한 함수들에 대해 공부할 필요가 있는 것 같다!
'[내일배움캠프]스파르타코딩클럽 AI 웹개발 > Today I Learned' 카테고리의 다른 글
[내일배움캠프 31일차 TIL] SQL GROUP BY ~ HEVING / WHERE (0) | 2024.08.05 |
---|---|
[TIL] global과 nonlocal with python (0) | 2024.08.03 |
[내일배움캠프 29일차 TIL] SQL - NULL (0) | 2024.08.01 |
[내일배움캠프 28일차 TIL] 소프트웨어 문서 (0) | 2024.07.31 |
[내일배움캠프 27일차 TIL] 빅데이터 및 인공지능 (1) | 2024.07.30 |