各数据库多表关联更新

65 阅读1分钟

MySQL

  • 方法1
update test1,test2 
set test1.name=test2.name,test1.age=test2.age
where test1.id=test2.id
  • 方法2
update test1 
set name=(select name from test2 where test2.id=test1.id),
age=(select age from test2 where test2.id=test1.id)

SQLServer

update test1
set test1.name=test2.name,test1.age=test2.age
from test1 
inner join test2
on test1.id=test2.id

Oracle

update test1 
set (test1.name,test1.age)=(select test2.name,test2.age from test2 where test2.id=test1.id)