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 @ 2018-08-24 12:36  ^ν^向上人生^ν^  阅读(1453)  评论(0编辑  收藏  举报