Bạn có thể làm điều này với toán học
DECLARE @sec INT = 93600
SELECT
CONVERT(VARCHAR(10), (@sec / 3600)) + ':' +
RIGHT('0' + CONVERT(VARCHAR(2), ((@sec % 3600) / 60)), 2) + ':' +
RIGHT('0' + CONVERT(VARCHAR(2), (@sec % 60)), 2)
Được viết dưới dạng một hàm:
CREATE FUNCTION udfTimeSpanFromSeconds(
@sec INT
)
RETURNS VARCHAR(15)
AS
BEGIN
RETURN
CONVERT(VARCHAR(10), (@sec / 3600)) + ':' +
RIGHT('0' + CONVERT(VARCHAR(2), ((@sec % 3600) / 60)), 2) + ':' +
RIGHT('0' + CONVERT(VARCHAR(2), (@sec % 60)), 2)
END
Cuộc gọi mẫu:
SELECT dbo.udfTimeSpanFromSeconds(360000)
KẾT QUẢ:
100:00:00