Select 长度为 minute:seconds 格式

Select length as minute:seconds format

正在尝试将秒数转换为 minute:seconds 格式。 例如207 秒将是 3:27 我有一个 table 列长度,其中存储的歌曲长度以秒为单位。

使用这个查询几乎可以工作,但是,当一首歌应该是 3:03 时,它会显示 3:3

select concat(Length/60, ':', Length%60) as Length from songs

因为我没有你的table,所以我使用一个变量来构建它,但是试试这个:

declare @length int = 207

select concat(@Length/60, ':', case len(@Length%60) when 1 then '0' else '' end, @Length%60) as [leng]
SELECT Convert(nvarchar, (Length/60)) + ':' + RIGHT('0' + Convert(nvarchar, Length%60), 2) as Length from songs

您可以使用 dateadd 来做到这一点:

select convert(varchar, dateadd(second, 187, 0), 108)

这个returns“00:03:07”这样你就可以在不需要的时候减少时间。