MySQL에서 날짜 계산을 하는 방법을 알아보겠습니다.
날짜 계산을 하기 위해서는 함수를 사용합니다.
- ADDTIME – 시간 더하기
- SUBTIME – 단위 지정 더하기
- ADDTIME – 시간 빼기
- DATE_SUB – 단위 지정 빼기
이번에 알아볼 함수들은 기준 시간에서 지정한 시간을 더하거나 빼는 처리를 하는 함수입니다.
두 개의 시간의 차이를 계산하는 방법을 아래를 참조해주세요.
ADDTIME
시간을 더하는 처리를 하기 위해서는 ADDTIME 함수를 사용합니다.
ADDTIME(기준 시간, 더하고 싶은 시간)
첫 번째 파라미터에는 기준이 되는 시간을 지정합니다.
두 번째 파라미터에는 더하고 싶은 시간을 지정합니다.
SELECT ADDTIME('2021-01-11 14:00:00', '01:30:40');
-> 2021-01-11 15:30:40
기준 시간에 1시간 30분 40초가 더해져 출력되었습니다.
DATE_ADD
지정한 단위로 더하는 함수로 DATE_ADD가 있습니다.
DATE_ADD(날짜, INTERVAL 값 단위)
DATE_ADD 함수에는 단위로 지정해 계산을 합니다.
단위 | 내용 |
---|---|
YEAR | 년 |
MONTH | 월 |
DAY | 일 |
HOUR | 시간 |
MINUTE | 분 |
SECOND | 초 |
SELECT DATE_ADD(now(), INTERVAL 2 YEAR);
-> 2024-01-11 14:49:36
현재 시간에 2년을 더해 출력했습니다.
SUBTIME
시간을 빼는 처리를 하는 함수로는 SUBTIME이 있습니다.
SUBTIME(기준 시간, 빼고 싶은 시간)
첫 번째 파라미터에는 기준이 되는 시간을 지정합니다.
두 번째 파라미터에는 빼고 싶은 시간을 지정합니다.
SELECT SUBTIME('2021-01-11 14:00:00', '01:30:40');
-> 2021-01-11 12:29:20
기준 시간에 1시간 30분 40초를 빼고 출력되었습니다.
DATE_SUB
지정한 단위로 빼는 처리를 하는 함수로 DATE_SUB가 있습니다.
DATE_SUB(날짜, INTERVAL 값 단위)
단위 지정은 DATE_ADD와 동일합니다.
SELECT DATE_SUB(now(), INTERVAL 3 MONTH);
-> 2021-10-11 14:59:35
현재 시간에서 3개월을 뺀 결과를 출력하고 있습니다.
기준 시간에서 시간을 더하거나 빼는 처리를 하는 방법을 알아봤습니다.
댓글