날짜 데이터에서 일부만 추출하기(YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, DATE_FORMAT, DATE)
1. 연도 추출하기
YEAR('날짜') : 연도만 숫자로 출력
DATE_FORMAT('날짜', '%Y') : 연도 4자리 출력
DATE_FORMAT('날짜', '%y') : 연도 끝 2자리 출력
SELECT YEAR('2023-05-28 11:20:15'); # 2023
SELECT DATE_FORMAT('2023-05-28 11:20:15', '%Y'); # 2023
SELECT DATE_FORMAT('2023-05-28 11:20:15', '%y'); # 23
2. 월 추출하기
MONTH('날짜') : 월만 숫자로 출력
DATE_FORMAT('날짜', '%m') : 월을 숫자로 출력 (00 ~ 12)
DATE_FORMAT('날짜', '%M') : 월을 문자로 출력 (January ~ December)
SELECT MONTH('2023-05-28 11:20:15'); # 05
SELECT DATE_FORMAT('2023-05-28 11:20:15', '%m'); # 05
SELECT DATE_FORMAT('2023-05-28 11:20:15', '%M'); # May
3. 일 추출하기
DAY('날짜') : 일만 숫자로 출력
DATE_FORMAT('날짜', '%d') : 일을 숫자로 출력 (01 ~ 31)
DATE_FORMAT('날짜', '%D') : 일을 서수로 출력 (1st, 2nd, 3rd, ...)
SELECT DAY('2023-05-28 11:20:15'); # 28
SELECT DATE_FORMAT('2023-05-28 11:20:15', '%d'); # 28
SELECT DATE_FORMAT('2023-05-28 11:20:15', '%D'); # 28th
4. 시 추출하기
HOUR('날짜') : 시만 숫자로 출력
DATE_FORMAT('날짜', '%H') : 시를 숫자로 출력 (00 ~ 23)
DATE_FORMAT('날짜', '%h') : 시를 숫자로 출력 (00 ~ 12)
DATE_FORMAT('날짜', '%p') : PM / AM 출력
SELECT HOUR('2023-05-28 17:20:15'); # 17
SELECT DATE_FORMAT('2023-05-28 17:20:15', '%H'); # 17
SELECT DATE_FORMAT('2023-05-28 17:20:15', '%p%h'); # PM05
5. 분 추출하기
MINUTE('날짜') : 분만 숫자로 출력
DATE_FORMAT('날짜', '%i') : 분을 숫자로 출력 (00 ~ 59)
SELECT MINUTE('2023-05-28 11:20:15'); # 20
SELECT DATE_FORMAT('2023-05-28 11:20:15', '%i'); # 20
6. 초 추출하기
SECOND('날짜') : 초만 숫자로 출력
DATE_FORMAT('날짜', '%S') : 초를 숫자로 출력 (00 ~ 59)
DATE_FORMAT('날짜', '%s') : 초를 숫자로 출력 (00 ~ 59)
SELECT SECOND('2023-05-28 17:20:15'); # 15
SELECT DATE_FORMAT('2023-05-28 17:20:15', '%S'); # 15
SELECT DATE_FORMAT('2023-05-28 17:20:15', '%s'); # 15
7. 년, 월, 일 출력하기
DATE('날짜') : 년-월-일 숫자로 출력
DATE_FORMAT('날짜', '%Y-%m-%d') : 년-월-일 숫자로 출력
SELECT DATE('2023-05-28 17:20:15'); # 2023-05-28
SELECT DATE_FORMAT('2023-05-28 17:20:15', '%Y-%m-%d'); # 2023-05-28
SELECT DATE_FORMAT('2023-05-28 17:20:15', '%y/%m/%d'); # 23/05/28
SELECT DATE_FORMAT('2023-05-28 17:20:15', '%Y/%M/%d'); # 23/May/28