核心函數:TIMESTAMPDIFF(unit, datetime_expr1, datetime_expr2)
返回 datetime_expr1 與 datetime_expr2 的整數差值,unit 可用單位:
FRAC_SECOND(微秒)、SECOND、MINUTE、HOUR、DAY、WEEK、MONTH、QUARTER、YEARSELECT TIMESTAMPDIFF(WEEK, '2011-09-30', '2015-05-04');
SELECT TIMESTAMPDIFF(DAY, '2011-09-30', '2015-05-04');
SELECT TIMESTAMPDIFF(SECOND, '2011-09-30', '2015-05-04');
等價寫法:UNIX_TIMESTAMP(end) - UNIX_TIMESTAMP(start)
SELECT TIMESTAMPDIFF(MINUTE, '2011-09-30', '2015-05-04');
或:SEC_TO_TIME(UNIX_TIMESTAMP(end) - UNIX_TIMESTAMP(start)) 獲取 HH:MM:SS 格式。
TO_DAYS() 注意事項TO_DAYS(end_time) - TO_DAYS(start_time)
不適用於 1582 年格里曆改革前的日期(遺失的天數不計入),結果不可靠。
UNIX_TIMESTAMP():日期轉秒數(自 1970-01-01)SEC_TO_TIME():秒數轉 HH:MM:SSTIME_TO_SEC():HH:MM:SS 轉秒數DATEDIFF():僅計算天數差(expr1 - expr2)