2013-01-31 36 views
0

下面一欄是我的表包含期限爲HH:MM:SS更新每個價值

My Table

我可以

SELECT (SUBSTRING(CAST('00:01:15' AS NVARCHAR(MAX)),1,2) * 360) 
+ (SUBSTRING(CAST('00:01:15' AS NVARCHAR(MAX)),4,2) * 60) 
+ SUBSTRING(CAST('00:01:15' AS NVARCHAR(MAX)),7,2) 

其轉換成秒,現在我需要更新該表通過讀取每一行記錄如何轉化爲秒?

喜歡的而不是00:01:15' 我需要的@DURATIONINSECONDS

回答

0

每一行嘗試像下面

如果你的表有值這樣

表1

DurationInSeconds 
00:01:15  
00:00:15  
00:01:16  
00:01:17 

並且您要更新該字段DurationInSeconds到秒......

那麼就嘗試像下面的查詢....

update Table1 set DurationInSeconds = (SUBSTRING(CAST(DurationInSeconds AS NVARCHAR(MAX)),1,2) * 360) + (SUBSTRING(CAST(DurationInSeconds AS NVARCHAR(MAX)),4,2) * 60) + SUBSTRING(CAST(DurationInSeconds AS NVARCHAR(MAX)),7,2) 

然後給結果如下圖所示

SELECT * from Table1 

DurationInSeconds 
75 
15 
76 
77 
+0

我不知道!有時我們可能會懷疑......我認爲這是我的一個......天哪!恥辱.... –