DB2中SQL使用总结
一、merge into数据合并
使用场景:在做数据备份的时候,我们通常情况下是创建一个同样结构的表,定期将数据从生产表中写入备份表中, 在备份间隔期间,生产数据会增加,会被修改,那么有一种备份方法就是增量备份。
对于新生成的数据insert,对于更改的数据update,对于不满足条件的数据进行delete
MERGE INTO <target> USING <source> ON <match-condition> WHEN [NOT] MATCHED [AND <othe-condition>] THEN [UPDATE SET ... | DELETE | INSERT VALUES ... | SIGNAL ...] [ELSE IGNORE]
target:要操作的目标表
source:一个查询,或者是表
match-condition:目标表和source的连接条件
MATCH表示目标表和source能连接上,NOT MATCH表示连接不上
other-condition:表示附加条件
THEN之后:当满足when之后的条件之后进行的操作,可以是curd
signal:用于标注错误处理
else ignore:当不满足前面任何when条件的数据,进行忽略处理。
二、left join
left join: 包含左表的所有行,对应的右表行可能为空。left join 是 left outer join 的缩写
right join: 包含右表的所有行,对应的左表行可能为空。
full join: 只包含左右表都匹配并且不为空的行。
浙公网安备 33010602011771号