我有几个问题将时间转换为十进制......
基本上我使用DATEDIFF来识别两个日期和时间之间的小时和分钟。这会产生5.45的结果,但是我希望得到5.75的结果。
select RTRIM(DATEDIFF(second, startdate, enddate)/3600)+'.'
+ RIGHT('0'+RTRIM((DATEDIFF(second, startdate, enddate) % 3600)/60),2)
from time
我尝试过一些事情,但我认为问题在于这不是一个整数,这就是我无法转换分钟的原因。
答案 0 :(得分:2)
获取以分钟为单位的时差,除以60,这将在小数分隔符前后数小时和分钟后分钟:
datediff(minute, startdate, enddate) / 60.0
答案 1 :(得分:1)
Select DATEDIFF(second, startdate, enddate)/3600.0
答案 2 :(得分:0)
如this answer中所述,“以秒为单位取日期,然后除以86400.0。小数点是必需的。”