我有两个表:TableA和TableB,如下所示,我想将表A的xyz数据传输到表B的stu列
表A
abc pqr xyz
1 apple 1200
2 orange 1500
3 mango 2200
表B
abc pqr stu
1 apple null
2 orange null
3 mango null
答案 0 :(得分:0)
使用加入和更新
update b
set b.stu=a.xyz
from tableB b join
tableA a on a.abc=b.abc
答案 1 :(得分:0)
使用update join
update b set stu=xyz
from tableb b inner join tablea
on a.abc=b.abc
答案 2 :(得分:0)
使用merge
的一种可能的解决方案:
merge TableB as target
using TableA as source
on target.abc = source.abc
when matched then
update stu = source.xyz;
假定abc
是两个表的主键,否则pqr
也需要参与匹配条件:
merge TableB as target
using TableA as source
on target.abc = source.abc and target.pqr = source.pqr
when matched then
update stu = source.xyz;