如何获得2列中的小时,分​​钟和秒的总和?

How to get the sum of hour, minutes, and seconds in 2 columns?

我正在使用 SQL 服务器作为数据库。我在 table、newTime, oldTime.

中有 2 列

假设我在 newTime 列中有 04:07:28 的值,而 oldTime 的值是 03:07:40.

结果应该得到 newTimeoldTime 列的总和,即 07:15:08

我尝试了 Split_String() 函数来轻松地将数字拆分为小时、分钟和秒。但是我在数据库中有一个问题,兼容性级别很低,我也尝试将 compatibility_level 设置为 130,但我没有更改数据库的权限。

有没有其他方法可以总结这两列?谢谢!

如评论中所述 - 如果您要存储 时间值,您应该真的使用TIME数据类型- 不是 VARCHAR ..... 总是 使用 最合适的 数据类型 - 没有例外。

无论如何 - 因为你有 VARCHAR,声明有点令人费解 - 但你去吧:

SELECT 
    DATEADD(SECOND, DATEDIFF(SECOND, 0, CAST(NewTime AS TIME)), CAST(OldTime AS TIME)) 
FROM 
    dbo.YourTableNameHere

使用 TIME 列看起来会容易得多,当然:

SELECT 
    DATEADD(SECOND, DATEDIFF(SECOND, 0, NewTime), OldTime) 
FROM 
    dbo.YourTableNameHere