使用另一个表中的数据更新表行

时间:2015-11-19 22:23:50

标签: sql

我对sql很新,我需要你的帮助才能解决这个问题。我有2张桌子。我想要的是使用另一个表中的数据更新一个表中的行,但只有在id相同的情况下值不同时才会更新。

像这样:

表A

ID       DESC   
1        asd
2        aaa
3        asda

表B

ID  DESC   
1   asd33
2   aaa22
3   asda

我想要的是这个更新DESC表B只有在值不同的情况下来自DESC A的数据

表B

ID   DESC   
1    asd
2    aaa
3    asda

2 个答案:

答案 0 :(得分:1)

UPDATE B
SET B.DESC = A.DESC
FROM TABLEB B
LEFT JOIN TABLEA A on A.ID = B.ID

答案 1 :(得分:0)

试试这个

Update TableB
   Set TableB.desc = TableA.desc
   From TableB INNER JOIN TableA  ON TableB.ID = TableA.ID
   Where TableB.desc NOT IN
   (Select ISNULL(TableA.desc,'') From TableA)