我有两个合并语句,其中一个使用其他行的子集。有没有办法优化解决方案。 PFB两个合并声明。
merge into tableA using (select a,b,c from tableB where x='1')
on (tableA.a = tableB.a and tableA.b= tableB.b)
when matched update set tableA.c = tableB.c;
merge into tableA using (select a,b,c from tableB where x='1' and b='2')
on (tableA.a = tableB.a)
when matched update set tableA.c= tableB.c;
提前致谢!
我想我混淆了具有相同列名的人。第一个语句更新所有必需的行,除了tableB中没有匹配行的行。因此,在第二次合并时,我使用tableB中某个硬编码行的另一个值更新该行。
答案 0 :(得分:0)
您只需使用第一行,因为第二行中的所有行都在第一行中。如果您现在运行第一个,则无需运行第二个