MySQL中的日期加減法非常方便,可以使用DATE_ADD和DATE_SUB函數來進行日期的加減運算。
-- 添加日期 SELECT DATE_ADD('2021-05-01', INTERVAL 1 DAY); -- 2021-05-02 SELECT DATE_ADD('2021-05-01', INTERVAL 1 MONTH); -- 2021-06-01 -- 減少日期 SELECT DATE_SUB('2021-05-01', INTERVAL 1 DAY); -- 2021-04-30 SELECT DATE_SUB('2021-05-01', INTERVAL 1 MONTH); -- 2021-04-01
使用DATE_ADD和DATE_SUB函數時,第一個參數為日期類型的值,第二個參數為INTERVAL關鍵字和相應的數字,表示進行的加減操作以及對應的數值。
需要注意的是,加減操作的數值可以為正數也可以為負數,MONTH操作可以跨越年份,但是DAY操作不能跨越月份。
除了直接使用DATE_ADD和DATE_SUB函數進行日期的加減運算外,還可以使用DATE_ADD和DATE_SUB函數的另外一種語法形式:
-- 添加日期 SELECT '2021-05-01' + INTERVAL 1 DAY; -- 2021-05-02 SELECT '2021-05-01' + INTERVAL 1 MONTH; -- 2021-06-01 -- 減少日期 SELECT '2021-05-01' - INTERVAL 1 DAY; -- 2021-04-30 SELECT '2021-05-01' - INTERVAL 1 MONTH; -- 2021-04-01
這種語法形式與直接使用DATE_ADD和DATE_SUB函數進行日期的加減運算是等效的。