TSQL Convert Second to Time Hour:Minutes:Second HH:MM:SS – TSQL 把秒轉成時分秒時間

今日同事顯示了一個更加方便的方法把 秒轉成時間 格式 HH:MM:SS [時:分:秒]

比起我數天前的網誌方便和簡短很多
MSSQL Convert Second to Time Hour:Minutes:Second HH:MM:SS – MSSQL 把秒轉成時分秒時間
以下是這個方法
這個方法十分聰明
我們可以用TSQL中的Convert的功能
Convert中的 108的格式是 hh:mi:ss
更多的 TSQL日期時間轉換格式可以參考以下網頁
http://msdn.microsoft.com/zh-tw/library/ms187928(v=SQL.105).aspx

之後我們可以好好運用 TSQLDATEADD 功能
加入我們需要轉換的秒數 之後把結果轉換成 108的格式

解決方法:
以下是自定的function:

-- =============================================
-- Author:		[Share Chi Wai]
-- Create date: [2011-09-07]
-- Description:	[This function is used to convert Second to Time HH:MM:SS]
-- =============================================
CREATE FUNCTION [dbo].[ConvertSecondToHHMMSS]
(
	-- Add the parameters for the function here
	@Second INT =0
)
RETURNS VARCHAR(15)
AS
BEGIN
	-- Declare the return variable here
	DECLARE @HHMMSS VARCHAR(10)
	--使用DATEADD 這個功能把秒加上..之後使用Convert Varchar的功能轉日期的格式為108  hh:mi:ss
	SET @HHMMSS = CONVERT(varchar, DATEADD(s, @Second, 0), 108)

	-- Return the result of the function
	RETURN @HHMMSS

END

執行方法:

SELECT dbo.ConvertSecondToHHMMSS (3999)

TSQL convert second to HH:MM:SS
Hope you find it useful

Leave a Reply