我讀了很多關於如何更新多個列的帖子,但仍然無法找到正確的答案。Sql服務器從另一個表更新多個列
我有一個表,我想從另一個表更新此表。
Update table1
set (a,b,c,d,e,f,g,h,i,j,k)=(t2.a,t2.b,t2.c,t2.d,t2.e,t2.f,t2.g,t2.h,t2.i,t2.j,t2.k)
from
(
SELECT ..... with join ... where ....
) t2
where table1.id=table2.id
如果我只運行SELECT語句(括號內),那麼腳本返回值,但不與更新
在最近(2014年我認爲)的MS SQL Server版本中,我們嘗試了這一點,它在t1時刻不知所措。指定目標字段。一旦我們刪除它們,更新按預期工作。我們使用Inner Join而不是僅僅Join,所以也許會有所作爲。所以,我們使用「set a = t2.a等」。 –