Oracle两张表关联批量更新其中一张表的数据

人生坎坎坷坷,跌跌撞撞那是在所难免。但是,不论跌了多少次,你都要坚强地再次站起来。再试一次,成功一定属于你!

方法一(推荐):

UPDATE 表2
  SET 表2.C =
     (SELECT B
       FROM 表1
      WHERE 表1.A = 表2.A)
 WHERE EXISTS
     (SELECT 1
       FROM 表1
      WHERE 表1.A = 表2.A);

尤其注意最后的外层where条件尤为重要,是锁定其批量更新数据的范围。

方法二:

MERGE INTO 表2
   USING 表1
    ON (表2.A = 表1.A)                    -- 条件是 A 相同
WHEN MATCHED
THEN
  UPDATE SET 表2.C = 表1.B                   -- 匹配的时候,更新

以上所述是小编给大家介绍的Oracle两张表关联批量更新其中一张表的数据,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

到此这篇关于Oracle两张表关联批量更新其中一张表的数据就介绍到这了。我坚信,人应该有力量,揪着自己的头发把自己从泥地里拔起来。更多相关Oracle两张表关联批量更新其中一张表的数据内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

您可能有感兴趣的文章
在Oracle数据库中同时更新两张表的简单方法

Oracle缩表空间的完整如何解决实例

详解Oracle控制文件及日志文件的管理问题

oracle指定类型和指定位数创建序列号的代码详解

Oracle官方工具SQLDeveloper的简单如何使用