在 MySql中对于时间处理方式比较多,不过最近在用到 DATEDIFF 函数 和 TIMESTAMPDIFF 时间 函数的时候发现了点以前没注意的地方:
不多说了 看例子 :
SELECT DATEDIFF('2012-12-12','2012-12-15');
(或者时间格式不一致可以处理下在调用函数
SELECT DATEDIFF(DATE_FORMAT('2012-12-12 11:10:02','%Y-%m-%d'),'2012-12-15');
)
运行结果:-3
【MySql|MySql中 DATEDIFF 函数 和 TIMESTAMPDIFF 时间 函数】
文章图片
得出结论: DATEDIFF(date1,date2) 函数 对时间取差值的时候是计算 date1 - date2 的值;
然而 :SELECT TIMESTAMPDIFF(MINUTE,DATE_FORMAT( '1-1-1 11:12', '%1-%1-%1 %H:%i:s%'),DATE_FORMAT( '1-1-1 11:15', '%1-%1-%1 %H:%i:s%'));
运行结果 : 3
文章图片
得出结论 : TIMESTAMPDIFF(MINUTE,date1,date2) 计算的是 date2 - date1 的分钟数
如果有不对的地方欢迎指正!
推荐阅读
- Spring|mybatis-plus的删除操作
- java|Mybatis源码简析——实用框架必看
- 数据库|学习 MyBatis 的一点小总结 —— 底层源码初步分析
- mysql 比text还大的类型
- MYSQL group by 怎么能快一点,之别一根筋
- MYSQL 5.7 VS 8 用函数你三思,三思
- MYSQL ICP 索引下推为什么他行,你不行()
- MYSQL小内存, 大问题
- java|Mybatis-plus 的 @Version注解