SQL Server更新表(用一张表的数据更新另一张表的数据)

a) 写法轻松,更新效率高:

  update table1 

  set field1=table2.field1,field2=table2.field2 

  from table2 where table1.id=table2.id
或者写成:
  update table1 

  set field1=b.field1,field2=b.field2 from table2 b

  where id=b.id

b) 常规方式,这种写法相当于一个 Left join, 以外面的where为更新条数,如果不加where就是所有记录

  update table1 set field1=

  (select top 1 field1 from table2 where table2.id=table1.id) 

  where table1.id in (condition)

 

posted @ 2020-12-14 09:53  恋上微笑的天使  阅读(3752)  评论(0)    收藏  举报