SELECT * from table where TIMESTAMPDIFF(type,pretime,latertime)>100
TIMESTAMPDIFF函數,需要三個參數,type是比較的類型,可以比較FRAC_SECOND、SECOND、 MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR幾種類型,pretime是前一個時間,比較時用後一個時間減前一個時間
在laravel 作爲條件的時候
$builder->whereRaw("ABS(TIMESTAMPDIFF(DAY,FROM_UNIXTIME(require_receive_time), FROM_UNIXTIME(add_time))) > 0 1");
解釋: require_receive_time 需要大於 add_time 至少一天
require_receive_time 和 add_time 的值都是時間戳格式的時間標記
TIMESTAMPDIFF用法
TIMESTAMPDIFF(interval, datetime_expr1, datetime_expr2)
description:
返回日期或日期時間表達式datetime_expr1 和datetime_expr2the 之間的整數差。其結果的單位由interval 參數給出。該參數必須是以下值的其中一個:
datetime_expr1 的格式 是
2019-03-18
的格式(並不是時間戳
)
- FRAC_SECOND - 表示間隔是毫秒
- SECOND - 秒
- MINUTE - 分鐘
- HOUR - 小時
- DAY - 天
- WEEK - 星期
- MONTH - 月
- QUARTER - 季度
- YEAR - 年
// example:
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)
---------------------