在其中一个表中,我有 2 列名称 date1 和 date2 ,具有 datetime 数据类型
我正在使用timediff(date2,date1)
计算这两个日期之间的差异。现在假设
日期1=2018-04-05 13:10:00
date2=2018-04-05 14:40:00
那么这两个日期之间的差异将为01:30:00
我的主要问题是如何将此 H:i:s
时间转换为数字时间格式,例如 01:30:00=1.5
或 01:45 :00=1.75
?
最佳答案
使用time_to_sec
转换为秒。然后除以 3600(每分钟 60 秒;每小时 60 分钟)即可得到小时:
select time_to_sec(timediff(timestamp '2018-04-05 14:40:00',
timestamp '2018-04-05 13:10:00')) / 60 / 60;
顺便说一句,您还可以使用 timestampdiff
而不是 timediff
来立即获取秒数:
select timestampdiff(second, timestamp '2018-04-05 13:10:00',
timestamp '2018-04-05 14:40:00') / 3600;
关于MYSQL计算数字时间格式的日期差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49879613/