SQL> select *from orders_master;
ORDER_ID ORDER_TOTAL
---------- -----------
1 1000
2 2000
3 3000
4
SQL> select *from monthly_orders;
ORDER_ID ORDER_TOTAL
---------- -----------
2 2500
3
SQL> MERGE INTO orders_master o //目标
2 USING monthly_orders m //源
3 ON (o.order_id = m.order_id) //对比的值
4 WHEN MATCHED THEN //如匹配
5 UPDATE SET o.order_total = m.order_total // 将源的值 更新 到目标
6 DELETE WHERE (m.order_total IS NULL) //当 源的order_total IS NULL 则删除 目标中的这样一行。
7 WHEN NOT MATCHED THEN //如不匹配
8 INSERT VALUES (m.order_id, m.order_total); //则 将源的值 插入 到目标。
2 行已合并。
如果如下;
monthly_orders的2,3
SQL> select *from orders_master;
ORDER_ID ORDER_TOTAL
---------- -----------
1 1000
2 2500
4
SQL> select *from monthly_orders;
ORDER_ID ORDER_TOTAL
---------- -----------
2 2500
3
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14181270/viewspace-1059349/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/14181270/viewspace-1059349/