微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sql两种方式计算时间差值并比较

 

-- DATE_SUB 加上 INTERVAL 代表把时间往前推N个小时,HOUR 是单位
-- 大于号后面的if是做了个非空判断
SELECT DATE_SUB(date_format(user.step_time, '%Y-%m-%d'), INTERVAL (user.cycle * 24) HOUR) > if(user.last_step_time is null, date_format(user.step_time, '%Y-%m-%d'), date_format(user.last_step_time, '%Y-%m-%d'))
FROM `t_user_info` user where user.id = 112233;

-- DATEDIFF 代表把两个时间相减
select DATEDIFF(DATE_FORMAT(user.step_time, '%Y-%m-%d %h:%i:%s'), user.last_step_time) > user.cycle
FROM `t_user_info` user where user.id = 112233;

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐