-
[MySQL] 날짜 차이 가져오기 (DATEDIFF, TIMESTAMPDIFF 함수)데이터베이스/MySQL 2018. 3. 28. 11:03
▶MySQL 날짜 차이 가져오기 (DATEDIFF, TIMESTAMPDIFF 함수)
▶설명
MySQL에서 두 날짜간의 차이를 가져올 때 사용하는 함수가 두 가지가 있습니다.
단순히 일 차이를 가져올 때 사용하는 것이 DATEDIFF 함수입니다.
이 외에도 차이를 연, 분기, 월, 주, 일, 시, 분, 초를 지정하여 가져올 때 사용하는 함수가 TIMESTAMPDIFF 함수입니다.
▶사용법
DATEDIFF
DATEDIFF(날짜1, 날짜2);
* 간단히 말하자면 날짜1 - 날짜2 동작입니다.
TIMESTAMPDIFF
TIMESTAMPDIFF(단위, 날짜1, 날짜2);
단위
- SECOND : 초
- MINUTE : 분
- HOUR : 시
- DAY : 일
- WEEK : 주
- MONTH : 월
- QUARTER : 분기
- YEAR : 연
▶예제 쿼리 (Example Query)
DATEDIFF 예제1
쿼리
SELECT TIMESTAMPDIFF(QUARTER, '2017-03-01', '2018-03-28');
결과
392
DATEDIFF 예제2
쿼리
SELECT DATEDIFF('2018-03-28 23:59:59', '2017-03-01 00:00:00');
결과
392
TIMESTAMPDIFF : 초
쿼리
SELECT TIMESTAMPDIFF(SECOND, '2017-03-01', '2018-03-28'); -- SELECT TIMESTAMPDIFF(SECOND, '2017-03-01 00:00:00', '2018-03-28 00:00:00');
결과
33868800
TIMESTAMPDIFF : 분
쿼리
SELECT TIMESTAMPDIFF(MINUTE, '2017-03-01', '2018-03-28'); -- SELECT TIMESTAMPDIFF(MINUTE, '2017-03-01 00:00:00', '2018-03-28 00:00:00');
결과
564480
TIMESTAMPDIFF : 시
쿼리
SELECT TIMESTAMPDIFF(HOUR, '2017-03-01', '2018-03-28'); -- SELECT TIMESTAMPDIFF(HOUR, '2017-03-01 00:00:00', '2018-03-28 00:00:00');
결과
9408
TIMESTAMPDIFF : 일
쿼리
SELECT TIMESTAMPDIFF(DAY, '2017-03-01', '2018-03-28'); -- SELECT TIMESTAMPDIFF(DAY, '2017-03-01 00:00:00', '2018-03-28 00:00:00');
결과
392TIMESTAMPDIFF : 주
쿼리
SELECT TIMESTAMPDIFF(WEEK, '2017-03-01', '2018-03-28'); -- SELECT TIMESTAMPDIFF(WEEK, '2017-03-01 00:00:00', '2018-03-28 00:00:00');
결과
56TIMESTAMPDIFF : 월
쿼리
SELECT TIMESTAMPDIFF(MONTH, '2017-03-01', '2018-03-28'); -- SELECT TIMESTAMPDIFF(MONTH, '2017-03-01 00:00:00', '2018-03-28 00:00:00');
결과
12
TIMESTAMPDIFF : 분기
쿼리
SELECT TIMESTAMPDIFF(QUARTER, '2017-03-01', '2018-03-28'); -- SELECT TIMESTAMPDIFF(QUARTER, '2017-03-01 00:00:00', '2018-03-28 00:00:00');
결과
4
TIMESTAMPDIFF : 연
쿼리
SELECT TIMESTAMPDIFF(YEAR, '2017-03-01', '2018-03-28'); -- SELECT TIMESTAMPDIFF(YEAR, '2017-03-01 00:00:00', '2018-03-28 00:00:00');
결과
1
'데이터베이스 > MySQL' 카테고리의 다른 글
[MySQL] 테이블, 컬럼 코멘트(Comment) 조회 (1) 2018.11.02 [MySQL] 중복 키 관리 방법 (0) 2018.10.31 [MySQL] DELETE LEFT JOIN (0) 2018.02.08 [MySQL] 숫자 관련 함수 (2) 2018.01.24 [MySQL] 문자열 길이 가져오기 (LENGTH, CHAR_LENGTH 함수) (0) 2018.01.23