MySQL中的date sub函數可以用來將日期進行減法操作,即計算某個日期前或后一定時間之后的日期。
SELECT DATE_SUB('2020-10-15', INTERVAL 1 MONTH); -- 將2020-10-15減去1個月
上面的代碼將輸出:
2020-09-15
除了MONTH,還可以使用其他interval參數,如DAY、HOUR、SECOND等。還可以使用數字直接表示相應的時間差。
SELECT DATE_SUB('2020-10-15', INTERVAL 10 DAY); -- 將2020-10-15減去10天 SELECT DATE_SUB('2020-10-15 12:00:00', INTERVAL 5 HOUR); -- 將2020-10-15 12:00:00減去5小時 SELECT DATE_SUB('2020-10-15 12:00:00', INTERVAL 30 SECOND); -- 將2020-10-15 12:00:00減去30秒 SELECT DATE_SUB('2020-10-15', INTERVAL 2 YEAR); -- 將2020-10-15減去2年
需要注意的是,date sub函數是針對日期進行的減法操作,如果需要對時間進行減法操作,可以使用time sub函數。
SELECT TIME_SUB('12:30:00', INTERVAL 2 HOUR); -- 將12:30:00減去2小時
上面的代碼將輸出:
10:30:00