merge如何改写update

这篇文章给大家分享的是有关merge如何改写update的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

1.OLD:

需求将HH2中的data_object_id同步至HH中。

UPDATE HH A
   SET DATA_OBJECT_ID =
          (SELECT DATA_OBJECT_ID
             FROM HH2 B
            WHERE A.object_id = B.object_id)
 WHERE EXISTS
          (SELECT 1
             FROM HH2 B
            WHERE A.object_id = B.object_id);

2.优化方向:

使用merge改写,减少HH2的访问次数

MERGE INTO HH A
     USING HH2 B
        ON (A.object_id = B.object_id)
WHEN MATCHED
THEN
   UPDATE SET DATA_OBJECT_ID = b.DATA_OBJECT_ID;

感谢各位的阅读!关于“merge如何改写update”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!