[SQL] DATETIME 연산 총정리: DATEDIFF, TIMESTAMPDIFF, DATE_ADD, DATE_SUB

오도원공육사·2021년 10월 15일
0

SQL

목록 보기
12/15

날짜간의 연산

  • DATEDIFF
  • TIMESTAMPDIFF

1. DATEDIFF

DATEDIFF(날짜1, 날짜2)
  • 날짜1 - 날짜2를 일차이로 반환한다.

2. TIMESTAMPDIFF

TIMESTAMPEDIFF(단위, 날짜2, 날짜1)
  • 날짜1 - 날짜2를 단위차이로 가져온다.

* DATEDIFF와 날짜 순서가 다르다.

  • SECOND : 초
  • MINUTE : 분
  • HOUR : 시
  • DAY : 일
  • WEEK : 주
  • MONTH : 월
  • QUARTER : 분기
  • YEAR : 연
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

날짜에 특정 기간 연산

  • DATE_ADD
  • DATE_SUB

1. DATE_ADD

DATE_ADD(기준날짜, INTERVAL)

2. DATE_SUB

DATE_SUB(기준날짜, INTERVAL)

예시.

-- 현재 시간에 1초 더하기
SELECT DATE_ADD(NOW(), INTERVAL 1 SECOND);

-- 현재 시간에 1분 더하기
SELECT DATE_ADD(NOW(), INTERVAL 1 MINUTE);

-- 현재 시간에 1시간 더하기
SELECT DATE_ADD(NOW(), INTERVAL 1 HOUR);

-- 현재 시간에 1일 더하기
SELECT DATE_ADD(NOW(), INTERVAL 1 DAY);

-- 현재 시간에 1달 더하기
SELECT DATE_ADD(NOW(), INTERVAL 1 MONTH);

-- 현재 시간에 1년 더하기
SELECT DATE_ADD(NOW(), INTERVAL 1 YEAR);
SELECT DATE_SUB(NOW(), INTERVAL -1 YEAR);

-- 현재 시간에 1년 빼기
SELECT DATE_ADD(NOW(), INTERVAL -1 YEAR);
SELECT DATE_SUB(NOW(), INTERVAL 1 YEAR);
profile
잘 먹고 잘살기

0개의 댓글