mysql的TIMESTAMPDIFF的简单使用

一、首先看TIMESTAMPDIFF在项目中的一个具体使用场景

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
mybatis查询:
在这里插入图片描述

二、mysql的时间差函数TIMESTAMPDIFF、DATEDIFF的具体用法

TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)

说明:
返回日期或日期时间表达式datetime_expr1 和datetime_expr2the 之间的整数差。其结果的单位由interval 参数给出。interval 的法定值同TIMESTAMPADD()函数说明中所列出的相同。

mysql> SELECT TIMESTAMPDIFF(MONTH,‘2009-12-01’,‘2009-09-01’);
-> -3

mysql> SELECT TIMESTAMPDIFF(YEAR,‘2009-05-01’,‘2008-01-01’);
-> -1

精确到秒差:

select TIMESTAMPDIFF(SECOND,DATE_FORMAT(NOW(),’%Y-%m-%d %H:%i:%s’),‘2013-03-07 15:43:00’)
from dual

以上摘自博文:
https://blog.csdn.net/xb12369/article/details/8646801

三、datediff 与 TIMESTAMPDIFF

datediff函数,返回值是相差的天数,不能定位到小时、分钟和秒。

– 相差2天
select datediff(‘2018-03-22 09:00:00’, ‘2018-03-20 07:00:00’);

TIMESTAMPDIFF函数,有参数设置,可以精确到天(DAY)、小时(HOUR),分钟(MINUTE)和秒(SECOND),使用起来比datediff函数更加灵活。对于比较的两个时间,时间小的放在前面,时间大的放在后面。

–相差1天
select TIMESTAMPDIFF(DAY, ‘2018-03-20 23:59:00’, ‘2015-03-22 00:00:00’);
–相差49小时
select TIMESTAMPDIFF(HOUR, ‘2018-03-20 09:00:00’, ‘2018-03-22 10:00:00’);
–相差2940分钟
select TIMESTAMPDIFF(MINUTE, ‘2018-03-20 09:00:00’, ‘2018-03-22 10:00:00’);
–相差176400秒
select TIMESTAMPDIFF(SECOND, ‘2018-03-20 09:00:00’, ‘2018-03-22 10:00:00’);

原文链接:https://blog.csdn.net/laowang2915/article/details/79666642

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值