话不多说直接上图

image

在我想要计算时间差值时发现网上找的这个datediff函数在navicat里并不好使,经过查阅各种资料得出一些结论。

1.如何正确使用datediff函数

image

通过例子发现在navicat里并不能给datediff函数确定计算单位,但是网上给的sql语句貌似是有单位的,这里我不知道是不是navicat不支持的原因还是说确实不能增加单位。最后计算结果是自动转换以天数计的

2.如何正确使用timediff函数

image

通过例子发现timediff计算差值是自动转换成小时的,并且最多能够计算出839个小时。这意味着差值过大是没法用timediff函数计算的

3.如何正确使用TIMESTAMPDIFF函数

image

最终发现还是timestampdiff好用,可以添加单位(几乎任何单位,如时分秒年月日等)。唯一需要注意的是它的计算规则是后面的时间减去前面的时间,这个顺序和datediff,timediff是相反的!细心的人可能发现了,为什么拿datediff算出来的天数和timestampdiff的天数不一样?看下图就明白了。

image

通过得出小时除以24发现,实际天数为1093.95…可以得出结论timestampdiff为舍去,datediff则严格遵守四舍五入法!

image
image

以上内容均为原创,转载请注明出处!本文并没有探索加了单位的datediff函数在mysql数据库里是否好使,欢迎各位大佬进行补充交流。

原文地址:http://www.cnblogs.com/FrankFaner/p/16880356.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性