MYSQL以数字时间格式计算日期差异

时间:2018-04-17 13:36:08

标签: mysql sql time

在其中一个表格中,我有2列名称 date1 date2 具有日期时间数据类型

我正在使用timediff(date2,date1)计算这两个日期之间的差异。现在假设

date1=2018-04-05 13:10:00 date2=2018-04-05 14:40:00

然后这两个日期之间的差异将为01:30:00

我的主要问题是如何将此H:i:s时间转换为01:30:00=1.501:45:00=1.75等数字时间格式?

2 个答案:

答案 0 :(得分:2)

使用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;

答案 1 :(得分:0)

选择小时(timediff(date1,date2))+分钟(timediff(date1,date2))/ 60 +秒(timediff(date1,date2))/ 60