2014-10-17 109 views
2

我試圖寫爲SQL Server的更新查詢,例如:SQL服務器更新

UPDATE x 
SET Col1 = y.Col1, 
     Col2 = y.Col2, 
     Col3 = y.Col3 
FROM 
    Table1 AS x 
INNER JOIN 
    Table2 AS y ON x.ID = y.ID 

,但我得到

Error: near "FROM": syntax error"

我看到了一個錯誤的答案類似相同的語法,但我不明白爲什麼我提前發現了Thanx錯誤

+0

我認爲你需要'select * FROM Table1 AS x' – artm 2014-10-17 08:41:03

+0

嘗試使用別名,如'x.C​​ol1'等 – christiandev 2014-10-17 08:51:09

+0

你的語法沒有任何問題。 [它在SQL小提琴上運行良好](http://sqlfiddle.com/#!3/ec04a/1)。你使用的是什麼版本的SQL Server?這是引發錯誤的確切查詢嗎? – GarethD 2014-10-17 08:52:18

回答

0

讓我們試試這個:我沒有測試下面的代碼,所以請讓我知道結果。謝謝

UPDATE x 
SET x.Col1 = y.Col1, 
     x.Col2 = y.Col2, 
     x.Col3 = y.Col3 
FROM 
    Table1 AS x 
INNER JOIN 
    Table2 AS y ON x.ID = y.ID 

希望它有幫助。

+0

我曾試過這個,仍然得到錯誤 – Dimitris 2014-10-17 09:32:49

+0

有趣,你得到的錯誤是什麼?同樣的錯誤? – Hatjhie 2014-10-17 09:42:05

+0

是的,同樣的錯誤 – Dimitris 2014-10-17 10:06:27