DATETIME 타입 :
YYYYMMDDhhmmss
형식DATE 타입 :
YYYYMMDD
형식.DATE_FORMAT
으로%Y-%m-%d %h:%m:%s
형식을 지정하면 시분초값은 0으로 채워진다.
Mysql 공식 문서 12.7 Date and Time Functions
DATE_FORMAT 표
FORMAT | 설명 |
---|---|
%M | 긴 월(영문) (Janeary, February ...) |
%m | 숫자 월(두자리)(01, 02, 03 ...) |
%W | 긴 요일 이름(영문) (Sunday, Monday ...) |
%D | Month 월(1st, 2dn, 3rd ...) |
%Y | 4자리 년도(1999, 2000, 2020) |
%y | 2자리 년도(99, 00, 20) |
%X | Year 연도(1999, 2000, 2020) %V와 같이쓰임 |
%x | Year 연도(1999, 2000, 2020) %v와 같이쓰임 |
%a | 짧은 요일 이름(영문) (Sun, Mon, Tue ...) |
%d | 일자(두자리)(00, 01, 02 ...) |
%e | 일자(한자리는 한자리)(0, 1, 2 ..) |
%c | 숫자월 (한자리는 한자리)(1, 2, 3 ..) |
%b | 짧은 월(영문)(Jen Feb ...) |
%j | n번째 일(100, 365) |
%H | Hour 시(00, 01, 24) 24시간 형태 |
%h | Hour 시(01, 02, 12) 12시간 형태 |
%I(대문자 아이) | Hour 시(01, 02 12) 12시간 형태 |
%l(소문자 엘) | Hour 시(1, 2, 12) 12 시간 형태 |
%i | Minute 분(00, 01 59) |
%r | hh:mm:ss AP |
%T | hh:mm:ss |
%S, %s | Second 초 |
%p | AP, PM |
%w | Day Of Week (0, 1, 2) 0부터 일요일 |
%U | Week 주(시작: 일요일) |
%u | Week 주(시작 월요일) |
%V | Week 주(시작: 일요일) |
%v | Week 주(시작:월요일) |
예시
- 형태: YYYY-MM-DD
1
2
3
4
5
6
7
8
9
SELECT DATE_FORMAT(NOW(),'%Y-%m-%d') AS DATE FROM DUAL
+-------------+
| DATE |
+-------------+
| 2023-08-11 |
+-------------+
- 형태: HH:MI:SS , HHMISS(HH:MI:SS로부터 콜론(:)을 제거)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
-- 콜론 붙은채로
select date_format(NOW(), '%H:%i:%s') as CREATE_TM;
+-------------+
| CREATE_TM |
+-------------+
| 12:05:06 |
+-------------+
-- 콜론 제거
SELECT REPLACE(DATE_FORMAT(NOW(), '%H:%i:%s'), ':', '') AS CREATE_TM;
+-------------+
| CREATE_TM |
+-------------+
| 120506 |
+-------------+
- 형태: 2016 September 22
1
2
3
4
5
6
7
8
SELECT DATE_FORMAT(NOW(),'%Y %M %d') AS DATE FROM DUAL
+-------------+
| DATE |
+-------------+
| 2016 September 22 |
+-------------+
- 형태 : 2016.09.22. 05:00:05 PM
1
2
3
4
5
6
7
8
SELECT DATE_FORMAT(NOW(),'%Y.%m.%d. %r') AS DATE FROM DUAL
+-------------+
| DATE |
+-------------+
| 2016.09.22. 05:00:05 PM |
+-------------+
- 형태 : 2016년09월22일 17시00분05초
1
2
3
4
5
6
7
8
SELECT DATE_FORMAT(NOW(),'%Y년%m월%d일 %H시%i분%S초') AS DATE FROM DUAL
+-------------+
| DATE |
+-------------+
| 2016년09월22일 17시00분05초 |
+-------------+
- 데이터: YYYY-MM-DD hh:mm:ss
- 형태: YYYY-MM-DD PM / AM hh:mm
1
2
3
4
5
6
7
8
9
10
11
12
13
SELECT
(CASE
WHEN INSTR(DATE_FORMAT(CREATE_DATE, '%Y-%m-%d %p %h:%i'), 'PM') > 0
THEN REPLACE(DATE_FORMAT(CREATE_DATE, '%Y-%m-%d %p %h:%i'), 'PM', '오후')
ELSE REPLACE(DATE_FORMAT(CREATE_DATE, '%Y-%m-%d %p %h:%i'), 'AM', '오전')
END) AS CREATE_DATE
FROM test
+----------------------+
| CREATE_DATE |
+----------------------+
| 2020-03-16 오후 06:20 |
+----------------------+