mysql计算时间差TIMESTAMPDIFF 提示用户即将超期
最近项目 需求 对即将超期的任务进行提醒。这是使用 TIMESTAMPDIFFPDIFF 方法
语法:
TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)。
说明:
返回日期或日期时间表达式datetime_expr1 和datetime_expr2the 之间的整数差。其结果的单位由interval 参数给出。该参数必须是以下值的其中一个:
1.FRAC_SECOND。表示间隔是毫秒
2.SECOND。秒
3.MINUTE。分钟
4.HOUR。小时
5.DAY。天
6.WEEK。星期
7.MONTH。月
8.QUARTER。季度
9.YEAR。年
规则 :后者时间减去前者时间
这里设置为1天、即 60*60=1440 精确到分。
一开始的sql:
SELECTTIMESTAMPDIFF(MINUTE,'2015-03-27 9:41:27',t.expiration_date), t.expiration_date FROM online_test tWHERE 0<TIMESTAMPDIFF(MINUTE,'2015-03-27 9:41:27',t.expiration_date) <1440以上sql明显不对。
=============================================================================
下面是正确的sql。
二开始的sql:
SELECTTIMESTAMPDIFF(MINUTE,'2015-03-27 9:41:27',t.expiration_date), t.expiration_date FROM online_test tWHERE 0<TIMESTAMPDIFF(MINUTE,'2015-03-27 9:41:27',t.expiration_date) AND TIMESTAMPDIFF(MINUTE,'2015-03-27 9:41:27',t.expiration_date)<1440
最后的sql:
SELECTTIMESTAMPDIFF(MINUTE,'2015-03-27 9:41:27',t.expiration_date), t.expiration_date FROM online_test tWHERE TIMESTAMPDIFF(MINUTE,'2015-03-27 9:41:27',t.expiration_date)BETWEEN 0 AND 1440
页:
[1]