merge用于插入数据是,判断表是否存在该数据从而进行不同的处理。其语法格式如下:
MERGE INTO table1 B1 --需要插入的表
USING (select * from table2) B2 --插入数据
ON (B1.CODE = B2.CODE) --判断条件
WHEN NOT MATCHED --条件不成立
THEN INSERT VALUES --THEN后为执行动作
(
B2.CODE,
B2.NAME)
使用marge可以判断的情况有三种,
**两个表都存在:**WHEN MATCHED THEN;
**B1表不存在,B2表存在:**WHEN NOT MATCHED THEN;
**B1表存在,B2表不存在:**WHEN NOT MATCHED BY SOURCE THEN。