0
我在數據庫中有一列存儲爲INT,我需要將該列轉換爲TIME,但所有前導零都被忽略。有沒有辦法可以做到這一點?當前導零被省略時將INT轉換爲TIME
例子:
HH:mm(UI) HHmmssSSS(db)
11:08 1108ssSSS
04:36 **0**436ssSSS
00:12 **00**12ssSSS
00:05 **000**5ssSSS
我在數據庫中有一列存儲爲INT,我需要將該列轉換爲TIME,但所有前導零都被忽略。有沒有辦法可以做到這一點?當前導零被省略時將INT轉換爲TIME
例子:
HH:mm(UI) HHmmssSSS(db)
11:08 1108ssSSS
04:36 **0**436ssSSS
00:12 **00**12ssSSS
00:05 **000**5ssSSS
爲了得到這些時間:
with CTE as
(
select otherfields, right('0000' + cast(IntField as varchar),4) as StrTime
from MyTable
)
select otherfields, CAST(STUFF(STUFF(STUFF(StrTime,3,0,':'),6,0,':'),9,0,'.') AS TIME)
from CTE
您可以添加分鐘,得到你想要的。計算需要一些算術:
select dateadd(minute,
(intcol/100) * 60 + (intcol % 100),
cast(0 as time)
)
請提供更清晰的數據 – mohan111
你想轉換什麼...? – Mansoor
'我在數據庫中有一列存儲爲INT'=>你可以給樣本嗎? '我需要將列轉換爲TIME'=>什麼是預期的輸出和你現在得到什麼? – Utsav