PLSQL:MERGE的用法

MERGE INTO fzq1 aa --fzq1表是需要更新的表
USING fzq bb -- 关联表
ON (aa.id = bb.id) --关联条件
WHEN MATCHED THEN --匹配关联条件,作更新处理
  UPDATE
     SET aa.chengji = bb.chengji + 1, aa.name = bb.name --此处只是说明可以同时更新多个字段。  
WHEN NOT MATCHED THEN --不匹配关联条件,作插入处理。如果只是作更新,下面的语句可以省略。
  INSERT VALUES (bb.id, bb.name, bb.sex, bb.kecheng, bb.chengji);

以上为用法,下面来一个实例

MERGE INTO cux.test_t1 t --需要更新或插入的表
USING cux_ap_terms_lines ctl -- 关联表
ON (t.t_id = ctl.line_id) --关联条件
WHEN MATCHED THEN --匹配关联条件,则作更新处理
  UPDATE SET t.cloum1 = ctl.header_id, t.cloum2 = ctl.term_id
WHEN NOT MATCHED THEN --不匹配关联条件,则作插入处理。如果只是作更新,则下面的语句可以省略。
  INSERT VALUES (ctl.line_id, ctl.header_id, ctl.term_id);
SELECT * FROM cux.test_t1;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值