다음과 같이 id 와 datetime 2열로 이루어진 간단한 테이블을 생성하고
임의로 날짜와 시간을 만들어 넣자.
insert into sandbox2 (datetime) VALUES
('2017-08-28 17:22:21'),
('2017-02-15 10:22:24'),
('2017-12-09 22:13:24'),
('2017-07-06 20:15:18'),
('2017-11-19 23:13:19'),
('2017-03-06 19:19:11'),
('2017-03-07 19:18:13'),
('2017-10-01 19:18:15'),
('2017-07-02 20:21:21'),
('2017-11-20 23:16:23'),
('2017-12-11 14:24:20'),
('2017-12-21 12:16:14');
이제 다음과 같이 질의하면
SELECT datetime FROM `sandbox2` WHERE id=1;
다음과 같이 나올 텐데
이 결과에서 시간 없이 날짜만 표기할 수 있을까?
date_format() 을 쓰면 가능하다.
예를 들어 다음과 같이 입력하면
SELECT date_format(datetime, '%Y-%m-%d') FROM `sandbox2` WHERE id=1;
다음과 같이 날짜만 나온다.
date_format의 두 번째 항목인 '%Y-%m-%d' 가 형식을 지정하는 부분임을 짐작할 수 있다.
여기에 쓰일 수 있는 목록은 다음과 같으며,
출처인 이곳에서 더 자세한 내용을 확인해 볼 수 있다.
(https://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html#function_date-format)
Specifier | Description |
%a | Abbreviated weekday name (Sun..Sat) |
%b | Abbreviated month name (Jan..Dec) |
%c | Month, numeric (0..12) |
%D | Day of the month with English suffix (0th, 1st, 2nd, 3rd, …) |
%d | Day of the month, numeric (00..31) |
%e | Day of the month, numeric (0..31) |
%f | Microseconds (000000..999999) |
%H | Hour (00..23) |
%h | Hour (01..12) |
%I | Hour (01..12) |
%i | Minutes, numeric (00..59) |
%j | Day of year (001..366) |
%k | Hour (0..23) |
%l | Hour (1..12) |
%M | Month name (January..December) |
%m | Month, numeric (00..12) |
%p | AM or PM |
%r | Time, 12-hour (hh:mm:ss followed by AM or PM) |
%S | Seconds (00..59) |
%s | Seconds (00..59) |
%T | Time, 24-hour (hh:mm:ss) |
%U | Week (00..53), where Sunday is the first day of the week; WEEK() mode 0 |
%u | Week (00..53), where Monday is the first day of the week; WEEK() mode 1 |
%V | Week (01..53), where Sunday is the first day of the week; WEEK() mode 2; used with %X |
%v | Week (01..53), where Monday is the first day of the week; WEEK() mode 3; used with %x |
%W | Weekday name (Sunday..Saturday) |
%w | Day of the week (0=Sunday..6=Saturday) |
%X | Year for the week where Sunday is the first day of the week, numeric, four digits; used with %V |
%x | Year for the week, where Monday is the first day of the week, numeric, four digits; used with %v |
%Y | Year, numeric, four digits |
%y | Year, numeric (two digits) |
%% | A literal % character |
%x | x, for any “x” not listed above |
'MySQL' 카테고리의 다른 글
[MYSQL] 에러 번호 1175 Safe Update 해결방법 (0) | 2018.07.17 |
---|---|
[MYSQL] 쿼리에서 변수 활용하기 SET (1) | 2018.06.19 |
[MYSQL] 오늘, 어제, 내일 날짜 자동으로 입력하기 curdate() (0) | 2018.06.12 |
[MySQL] 행, 열 바꾸어 출력하기 CASE ~ AS (0) | 2017.12.30 |
[MySQL] 결과를 특정 순서로 정렬하기 ORDER BY FIELD() (2) | 2017.12.29 |
[MySQL] 데이터 변경하기 UPDATE (0) | 2017.12.28 |
[MySQL] 데이터 삭제하기 DELETE, TRUNCATE (1) | 2017.12.27 |
[MySQL] 테이블에 데이터 입력하기 INSERT INTO (0) | 2017.12.10 |
[MySQL] 테이블 이름 확인하기 SHOW TABLES (0) | 2017.12.08 |
[MySQL] DB에서 특정 행들만 가져오기(1) - WHERE 절의 "or"를 이용 (0) | 2017.09.08 |
댓글