使用SQL Server格式化hh:mm

时间:2012-01-30 16:24:32

标签: sql sql-server-2008 tsql date-formatting

我正在使用

CONVERT( CHAR(5), DATEADD(n, value),0), 108)

将分钟转换为hh:mm格式,但是当我有更多分钟然后适合24小时时它会中断。例如。 1440代替00:00而不是24:00

我该如何解决?

2 个答案:

答案 0 :(得分:2)

考虑使用%模运算符:

select cast(n/60 as varchar(20)) + ':' + 
       right('0' + cast(n%60 as varchar(2)), 2)

答案 1 :(得分:1)

尝试这样的事情:

declare @minutes int
select @minutes = 1440

select convert(varchar, @minutes/60) + ':' + right ('0'+convert(varchar, @minutes%60), 2)