0%

날짜 데이터 일부만 추출하기

DATETIME 형식의 날짜 데이터에서 일부만 추출하는 방법을 정리합니다.


DATETIME

DATETIME은 SQL에서 지정한 날짜 형식이다. 해당 구조는 아래와 같다.

1
2
3
4
2013-12-22 11:30:00
2017-09-27 19:09:00
2018-02-02 14:18:00
2018-02-02 14:17:00

예시에서 확인할 수 있듯이 연도-월-일 시간:분:초 형식으로 셋팅되어 있다. 만약 여기서 시간만 필요하거나 월만 필요하다면 어떻게 쿼리를 해야할까?
SQL에서는 원하는 날짜나 시간대를 부분 추출할 수 있는 여러 함수들을 제공한다.

YEAR: 연도

YEARDATETIME형식에서 연도만 추출하여 출력한다. 문법은 다음과 같다.

1
2
3
4
5
6
SELECT YEAR(DATETIME) FROM '테이블 이름';
2013
2017
2018
2018
2018

MONTH: 월

MONTHDATETIME형식에서 월 단위만 추출하여 출력한다.

1
2
3
4
5
6
SELECT MONTH(DATETIME) FROM '테이블 이름';
12
9
2
2
1

DAY: 일

DAYDATETIME형식에서 일 단위만 추출하여 출력한다.

1
2
3
4
5
6
SELECT DAY(DATETIME) FROM '테이블 이름';
22
27
2
2
28

HOUR: 시간

HOURDATETIME형식에서 시간 단위만 추출하여 출력한다.

1
2
3
4
5
6
SELECT HOUR(DATETIME) FROM '테이블 이름';
11
19
14
14
17

MINUTE: 분

MINUTEDATETIME형식에서 분 단위만 추출하여 출력한다.

1
2
3
4
5
6
SELECT MINUTE(DATETIME) FROM '테이블 이름';
30
9
18
17
51

SECOND: 초

SECONDDATETIME형식에서 초 단위만 추출하여 출력한다.

1
2
3
4
5
6
SELECT SECOND(DATETIME) FROM '테이블 이름';
0
0
0
0
0