最近寫了一個題目,表示要更新Table 1某兩欄的資料,而資料來源為Table 2,此時腦海中浮出
UPDATE指令,即UPDATE TABLE1 SET COLUMN1 = 'value1', ... WHERE COLUMN = 'ID1'
的基本更新語法,原則上以前都沒有想到要利用其他TABLE來更新,只能說自己太LOW了..
SQL語法使用環境為:SQL Server 2008 R2
首先語法需做一些調整,如下:
從這個語法可以得到,T1.COLUMN1的內容由T2.COLUMN1給取代
且需符合兩個TABLE的COLUMN2是相等的
而前提TABLE1要去比較的資料列還需要過濾T1.COLUMN3 = 'value'的才會被選取囉!
一般來說TABLE2的資料選定還有可能會再跟其它的TABLE JOIN,因此語法可能還會
再複雜一點!
基本使用大致上是這樣,在這邊記錄一下,以避免以後忘記ORZ...
UPDATE指令,即UPDATE TABLE1 SET COLUMN1 = 'value1', ... WHERE COLUMN = 'ID1'
的基本更新語法,原則上以前都沒有想到要利用其他TABLE來更新,只能說自己太LOW了..
SQL語法使用環境為:SQL Server 2008 R2
首先語法需做一些調整,如下:
UPDATE
TABLE1 SET T1.COLUMN1 = T2.COLUMN1
FROM
TABLE1 T1 INNER JOIN TABLE2 T2
ON
T1.COLUMN2 = T2.COLUMN2
WHERE
T1.COLUMN3 = 'value'
從這個語法可以得到,T1.COLUMN1的內容由T2.COLUMN1給取代
且需符合兩個TABLE的COLUMN2是相等的
而前提TABLE1要去比較的資料列還需要過濾T1.COLUMN3 = 'value'的才會被選取囉!
一般來說TABLE2的資料選定還有可能會再跟其它的TABLE JOIN,因此語法可能還會
再複雜一點!
基本使用大致上是這樣,在這邊記錄一下,以避免以後忘記ORZ...
留言
張貼留言