MySQL中TIMESTAMPDIFF和TIMESTAMPADD函數的用法
在應用時,經常要使用這兩個函數TIMESTAMPDIFF和TIMESTAMPADD。
一,TIMESTAMPDIFF
語法:
TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)。
說明:
www.2cto.com
返回日期或日期時間表達式datetime_expr1 和datetime_expr2the 之間的整數差。其結果的單位由interval 參數給出。該參數必須是以下值的其中一個:
FRAC_SECOND。表示間隔是毫秒
SECOND。秒
MINUTE。分鐘
HOUR。小時
DAY。天
WEEK。星期
MONTH。月
QUARTER。季度
YEAR。年
使用如下:
[sql]
mysql> select TIMESTAMPDIFF(day,'2012-08-24','2012-08-30');
+----------------------------------------------+
| TIMESTAMPDIFF(day,'2012-08-24','2012-08-30') |
+----------------------------------------------+
| 6 |
+----------------------------------------------+
1 row in set (0.00 sec)
www.2cto.com
[sql]
mysql> select TIMESTAMPDIFF(MINUTE,'2012-08-24 09:00:00','2012-08-30 12:00:00');
+-------------------------------------------------------------------+
| TIMESTAMPDIFF(MINUTE,'2012-08-24 09:00:00','2012-08-30 12:00:00') |
+-------------------------------------------------------------------+
| 8820 |
+-------------------------------------------------------------------+
1 row in set (0.01 sec)
二,TIMESTAMPADD
語法:
TIMESTAMPADD(interval,int_expr,datetime_expr)
www.2cto.com
說明:
將整型表達式int_expr 添加到日期或日期時間表達式 datetime_expr中。式中的interval和上文中列舉的取值是一樣的。
[sql]
mysql> select TIMESTAMPADD(MINUTE,8820,'2012-08-24 09:00:00');
+-------------------------------------------------+
| TIMESTAMPADD(MINUTE,8820,'2012-08-24 09:00:00') |
+-------------------------------------------------+
| 2012-08-30 12:00:00 |
+-------------------------------------------------+
1 row in set (0.00 sec)