在MySQL中判斷時間差可以使用TIMESTAMPDIFF函數(shù)。該函數(shù)返回兩個日期或時間之間的差值,可以以秒、分、時、日、周、月或年為單位。語法如下:
TIMESTAMPDIFF(unit, datetime1, datetime2)
其中,unit參數(shù)指定返回值的時間單位,datetime1和datetime2參數(shù)是要計算時間差的兩個日期或時間。
下面是幾個常用的例子:
-- 返回兩個日期相差的天數(shù) SELECT TIMESTAMPDIFF(DAY, '2020-01-01', '2020-01-31'); -- 返回兩個時間相差的秒數(shù) SELECT TIMESTAMPDIFF(SECOND, '2020-01-01 10:00:00', '2020-01-01 10:00:30'); -- 返回兩個日期相差的年數(shù) SELECT TIMESTAMPDIFF(YEAR, '1960-01-01', '2020-01-01');
需要注意的是,datetime1和datetime2參數(shù)的格式必須是MySQL支持的標準日期時間格式,否則會報錯。對于其他格式的日期或時間,可以使用STR_TO_DATE函數(shù)將其轉(zhuǎn)換為標準格式再進行計算。