SQL将毫秒转换为天,小时,分钟

sd_*_*ula 6 sql t-sql sql-server sql-server-2017

我需要将毫秒值85605304.3587转换为0d 18h 21m的值.不知道如何开始,有没有类似于SQL中的TimeSpan,就像在C#中一样?

Gor*_*off 9

您可以明确地进行计算.我觉得是这样的:

select floor(msvalue / (1000 * 60 * 60 * 24)) as days,
       floor(msvalue / (1000 * 60 * 60)) % 24 as hours,
       floor(msvalue / (1000 * 60)) % 60 as minutes
Run Code Online (Sandbox Code Playgroud)

注意:某些数据库使用mod而不是%.