首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

MySQL TIMESTAMPDIFF 與 TIMESTAMPADD 函數完整用法指南

     編輯:MySQL 綜合教學

TIMESTAMPDIFF:計算時間差


TIMESTAMPDIFF(interval, datetime_expr1, datetime_expr2)

回傳 datetime_expr2 - datetime_expr1 的整數差值。

支援間隔單位

單位說明
FRAC_SECOND毫秒
SECOND秒
MINUTE分鐘
HOUR小時
DAY天
WEEK週
MONTH月
QUARTER季度
YEAR年

使用範例


SELECT TIMESTAMPDIFF(DAY, '2012-08-24', '2012-08-30');
-- 結果:6

SELECT TIMESTAMPDIFF(MINUTE, '2012-08-24 09:00:00', '2012-08-30 12:00:00');
-- 結果:8820

TIMESTAMPADD:時間加減運算


TIMESTAMPADD(interval, int_expr, datetime_expr)

將整數間隔加到日期時間上,單位同 TIMESTAMPDIFF。

使用範例


SELECT TIMESTAMPADD(MINUTE, 8820, '2012-08-24 09:00:00');
-- 結果:2012-08-30 12:00:00

實務應用場景

  • 計算會員到期剩餘天數:TIMESTAMPDIFF(DAY, NOW(), expire_date)
  • 計算活動倒計時:TIMESTAMPDIFF(SECOND, NOW(), event_start)
  • 產生報表時間區間:TIMESTAMPADD(MONTH, -3, NOW()) 取三個月前
  • 配合 WHERE 條件篩選:WHERE TIMESTAMPDIFF(HOUR, create_time, NOW()) < 24

注意事項

  • 參數順序:datetime_expr2 - datetime_expr1,勿搞反
  • 回傳為整數,小數部分捨去
  • 日期參數支援 DATE、DATETIME、TIMESTAMP 字串
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved