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)
---------------------