对表A的更新或者插入语句如下:
merge into 表A a
using(select ID,NAME,AGE from 表B where ID=1) b on(a.ID=b.ID)
when matched then updated set A.NAME=C.NAME,A.AGE=C.AGE
when not matched then insert(a.ID,a.NAME,a.AGE) values(b.ID,b.NAME,b.AGE);
merge into A using (select B.ID,B.NAME,B.AGE from B) C ON (A.ID=C.ID)
when matched then
update set A.NAME=C.NAME,A.AGE=C.AGE
commit;
这也许是你想要的插入更新:判断B表和A表是否满足ON中条件,如果满足则用B表去更新表,如果不满足,则将插入表
还需要子查询吗?
merge into A using B on a.id=b.id
when matched then update set XX=XX
when not match then insert () values()