本文主要是介绍Oracle 中的 merge into 用法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、基础环境
操作系统:Windows 或 Linux
数据库版本:Oracle Database 11.2.0.1.0 及以上版本
二、适用场景
适用于一条语句更新、插入(或删除),效率比较高。建议在 on 的条件中使用的字段添加索引。
三、具体用法
1、一条语句更新和插入。
如何条件匹配就更新,如果不匹配就插入。
MERGE INTO 目标表 a
USING 源表 b
ON (a.字段1 = b.字段2 and a.字段n = b.字段n)
WHEN MATCHED THENUPDATE SET a.新字段 = b.字段 WHERE 限制条件
WHEN NOT MATCHED THENINSERT(a.字段名1,a.字段名n)VALUES(b.字段值1, b.字段值n) WHERE 限制条件
2、一条语句更新和删除。
MERGE INTO 目标表 a
USING 源表 b
ON (a.字段1 = b.字段2 and a.字段n = b.字段n)
WHEN MATCHED THENUPDATE SET a.新字段 = b.字段 WHERE 限制条件
WHEN NOT MATCHED THENDELETE a.新字段 = b.字段WHERE 限制条件
这篇关于Oracle 中的 merge into 用法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!