且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何在 TSQL 中将分钟数转换为 hh:mm 格式?

更新时间:2021-11-25 14:45:18

您可以将持续时间转换为日期,然后对其进行格式化:

You can convert the duration to a date and then format it:

DECLARE
    @FirstDate datetime,
    @LastDate datetime

SELECT
    @FirstDate = '2000-01-01 09:00:00',
    @LastDate = '2000-01-01 11:30:00'

SELECT CONVERT(varchar(12), 
       DATEADD(minute, DATEDIFF(minute, @FirstDate, @LastDate), 0), 114) 

/* Results: 02:30:00:000 */

为了降低精度,修改varchar的大小:

For less precision, modify the size of the varchar:

SELECT CONVERT(varchar(5), 
       DATEADD(minute, DATEDIFF(minute, @FirstDate, @LastDate), 0), 114) 

/* Results: 02:30 */