我创建了一个包含数据类型列的表 time(7)
我想计算它们之间的时差。
表time:
id timefrom timeto result
--------------------------------------
1 13:50:00 14:10:00 00:20:00
2 11:10:00 11:00:00 23:50:00
Run Code Online (Sandbox Code Playgroud)
例如:
结果应显示00:20。
有这个功能吗?
DATEDIFF(hour, UseTimeFrom, UseTimeTo) hourtime,
(DATEDIFF(MINUTE, UseTimeFrom , UseTimeTo)) - (((DATEDIFF(hour, UseTimeFrom, UseTimeTo)) * 60)) as mintime
Run Code Online (Sandbox Code Playgroud)
你可以这样做:
select *, convert(time, convert(datetime, timeto) - convert(datetime, timefrom))
from table1
Run Code Online (Sandbox Code Playgroud)
这会将时间转换为第 0 天(1.1.1900)的日期时间,然后进行计算,如果 timeto 较小,它将到达前一天,但转换为时间将从中获取时间部分。
| 归档时间: |
|
| 查看次数: |
4740 次 |
| 最近记录: |