需要通过在 SQL 服务器中组合 DATEDIFF(hh,StartTime,EndTime) + 'Minutes' 来输出

Need output by combining DATEDIFF(hh,StartTime,EndTime) + 'Minutes' in SQL Server

当运行这个查询时,我需要合并输出

DATEDIFF(mm, StartTime, EndTime) + 'Minutes'

我遇到了这个错误

Conversion failed when converting the varchar value 'Minutes' to data type int

我需要实现 15 Minutes 的输出。

(15代表StartTime和EndTime的差值)

DATEDIFF 函数returns 一个 INT 值。 所以你需要把它转换成一个字符串。

试试

SELECT CAST(DATEDIFF(mm,StartTime, EndTime) AS NVARCHAR(2)) + 'Minutes'

显然您可以使用其他目标字符串类型,例如 char\nchar 等...并使用 CONVERT 函数代替 CAST。

使用CONCAT():

select concat(DATEDIFF(minute, StartTime, EndTime), 'Minutes')

CONCAT() 将方便地将参数转换为字符串。另请注意,这拼写为 minute。我建议在使用日期函数时使用全名。