首页 > 数据库技术 > 详细

oracle中merge into用法

时间:2019-05-09 18:05:14      阅读:119      评论:0      收藏:0      [点我收藏+]

merge into语法:
    merge into [target-table] a using [source-table sql] b on([conditional expression] and [...]...)  
    when matched then  
        [update sql]  
    when not matched then  
        [insert sql]  

作用:判断B表和A表是否满足on中条件,如果满足则用b表去更新a表,如果不满足,则将b表数据插入a表但是有很多可选项,如下:
1.正常模式
2.只update或者只insert
3.带条件的update或带条件的insert
4.全插入insert实现
5.带delete的update(觉得可以用3来实现)

 

举例:

MERGE INTO T_R_FR_ETFCNSS_BOOK E
  USING (SELECT N_REC_MONEY, C_SSTD_WAY FROM   T_R_FR_ETF_MAIN) G
    ON (E.C_SSTD_WAY = G.C_SSTD_WAY)
WHEN MATCHED THEN
  UPDATE SET E.N_REC_MONEY = G.N_REC_MONEY

WHEN NOT MATCHED THEN 

  INSERT INTO ...

解析:就是将这张表T_R_FR_ETF_MAIN的N_REC_MONEY这个字段更新到T_R_FR_ETFCNSS_BOOK这张表中,

    条件是ON后面满足E.C_SSTD_WAY = G.C_SSTD_WAY时,如果不满足则插入。

update跟insert可以同时存在,也可以只存在一个。

 

oracle中merge into用法

原文:https://www.cnblogs.com/liliang906/p/10839735.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!