我一直写程序希望保持我的程序能过跨平台,或跨编译器,或跨数据库。
但是有时候有些需求使用特殊的语法,会更简单。今天领导希望我去尝试使用Merge。Fuck
Oracle9i引入了MERGE命令,你能够在一个SQL语句中对一个表同时执行inserts和updates操作.
MERGE命令从一个或多个数据源中选择行来updating或inserting到一个或多个表.
Oracle 10g中MERGE有如下一些改进:
1、UPDATE或INSERT子句是可选的
2、UPDATE和INSERT子句可以加WHERE子句
3、ON条件中使用常量过滤谓词来insert所有的行到目标表中,不需要连接源表和目标表
4、UPDATE子句后面可以跟DELETE子句来去除一些不需要的行