2014-03-03 38 views
1

我想對許多時間戳記不正確的行(SQL 2005)運行查詢並僅替換DAY值。我最初的想法只是使用如下替換功能:TSQL如何僅更新特定日期的DATETIME列的日期部分

-- date correction 
UPDATE mytable 
SET [date] = REPLACE([date], '2014-02-20', '2014-02-27') 
WHERE [date] LIKE '2014-02-20%' 

..但被證明是因爲給定的列數據類型是不成功的可能性最大。有什麼建議麼 ?

+0

你有沒有嘗試使用通配符像'2%',而不是'20%' –

+0

......沒有,因爲這將影響到所有天,從02-20到02-29 – Milan

回答

3

您也可以只讓一個DATEADD

UPDATE mytable 
SET [date] = DATEADD(DAY, 7, [date]) 
WHERE [date] >= '2014-02-20' AND [date] < '2014-02-21' 
+0

就是這樣!謝謝。 – Milan