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