merge语句的分析:
/**
MERGE语句是Oracle9i新增的语法,用来合并UPDATE和INSERT语句。
通过MERGE语句,根据一张表或子查询的连接条件对另外一张表进行查询,
连接条件匹配上的进行UPDATE,无法匹配的执行INSERT。
这个语法仅需要一次全表扫描就完成了全部工作,执行效率要高于INSERT+UPDATE。
**/
merge语句基本的框架:
merge into 目标表 T1 using (select * from 另外的表) T2
on (T1.字段名 = T2.字段名) --关联的条件
when matched then --符合关联条件的时候,进行更新
update set T1.指定字段名 = T2.指定字段名 --更新表数据
when not matched then --不符合关联条件的时候,进行插入
insert (T1.指定字段名) --可以是多个,以逗号分隔
values(T2.指定字段名) --可以是多个,以逗号分隔,必须和T1的字段一一对应
时间: 2024-11-06 20:49:21