DATE_SUB(date, INTERVAL expr unit), SUBDATE(date, INTERVAL expr unit), SUBDATE(date, days)
DATE_SUB() 함수는 날짜를 더하는 DATE_ADD() 함수와 반대로 첫 번째 매개변수로 들어온 날짜에서 두 번째 매개변수의 값을 뺀 날짜를 반환합니다. SUBDATE() 함수도 ADDDATE() 함수와 사용법은 같지만, 날짜를 더하는 것이 아니라 뺍니다.
코드 6-28
SELECT DATE_SUB('2021-01-20', INTERVAL 5 DAY) DATESUB,
SUBDATE('2021-01-20', INTERVAL 5 DAY) SUB_DATE1,
SUBDATE('2021-01-20', 5 ) SUB_DATE2;
실행결과
DATE_SUB(), SUBDATE() 함수의 매개변수는 코드 6-26의 DATE_ADD(), ADDDATE() 함수와 같습니다. 첫 번째 매개변수는 모두 2021년 1월 20일이고 두 번째 매개변수는 5일을 의미하는데, 여기에서는 더하는 게 아니라 빼는 것이므로 결과 모두 2021년 1월 15일을 반환했습니다.
날짜를 뺄 때는 DATE_SUB(), SUBDATE() 함수를 사용해도 되지만, DATE_ADD()나 ADDDATE() 함수의 두 번째 매개변수 중 expr을 음수 형태로 사용해서도 날짜를 빼는 효과를 낼 수 있습니다.