MERGER INTO 10g

鄢雅畅
2023-12-01

NERGER INTO 的新用法-----未测试,没环境

 

 

--10g新特性,单个操作
merge into acct a
      using subs b on(a.msid=b.msid)
    when not matched then--只有单个not matched的时候,只做插入,不做更新,只有单个matched的时候,只做更新操作
         insert(a.msid,a.bill_month,a.areacode) values(b.msid,'200702',b.areacode);

 

--10g新特性,merge操作之后,只有匹配的update操作才可以,用delete where子句删除目标表中满足条件的行。
  merge into acct a
     using subs b on (a.msid=b.msid)
   when MATCHED then
        update set a.areacode=b.areacode        
        delete where (b.ms_type!=0)
        when NOT MATCHED then
        insert(msid,bill_month,areacode)
        values(b.msid,'200702',b.areacode)
        where b.ms_type=0;
  --10g新特性,满足条件的插入和更新         
merge into acct a
     using subs b on (a.msid=b.msid)     
   when MATCHED then
        update set a.areacode=b.areacode
        where b.ms_type=0
   when NOT MATCHED then
        insert(msid,bill_month,areacode)
        values(b.msid,'200702',b.areacode)
        where b.ms_type=0;

 类似资料:

相关阅读

相关文章

相关问答