gpt4 book ai didi

sql-server - 如何在 T-SQL 中计算时间差

转载 作者:行者123 更新时间:2023-12-04 02:00:33 26 4
gpt4 key购买 nike

我创建了一个数据类型为 time(7)

列的表

我想计算它们之间的时间差。

时间:

 id   timefrom     timeto      result
--------------------------------------
1 13:50:00 14:10:00 00:20:00
2 11:10:00 11:00:00 23:50:00

例如:

  • 时间从 13:50 开始
  • 时间到 14:10

结果应显示 00:20

有这个功能吗?

DATEDIFF(hour, UseTimeFrom, UseTimeTo) hourtime,
(DATEDIFF(MINUTE, UseTimeFrom , UseTimeTo)) - (((DATEDIFF(hour, UseTimeFrom, UseTimeTo)) * 60)) as mintime

最佳答案

你可以这样做:

select *, convert(time, convert(datetime, timeto) - convert(datetime, timefrom)) 
from table1

这会将时间转换为第 0 天 (1.1.1900) 的日期时间,然后进行计算,如果 timeto 较小,它将到达前一天,但转换为时间将从其中获取时间部分。

SQL Fiddle 中的示例

关于sql-server - 如何在 T-SQL 中计算时间差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31634517/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com