zoukankan      html  css  js  c++  java
  • oracle merge 目标表以及源表存在重复列的问题(转)

    SQL> select * from t_source;                                                                                             
                                                                                                                             
                                          A                                       B                                          
    --------------------------------------- ---------------------------------------                                          
                                          1                                       1                                          
                                          2                                       2                                          
                                                                                                                             
    SQL> select * from t_target;                                                                                             
                                                                                                                             
                                          A                                       B                                          
    --------------------------------------- ---------------------------------------                                          
                                          2                                      34                                          
                                          2                                    3999                                          
                                                                                                                             
    SQL> merge into t_target using t_source on (t_source.a=t_target.a) when matched then update set t_target.b=t_source.b;   
                                                                                                                             
    Done                                                                                                                     
                                                                                                                             
    SQL> select * from t_target;                                                                                             
                                                                                                                             
                                          A                                       B                                          
    --------------------------------------- ---------------------------------------                                          
                                          2                                       2                                          
                                          2                                       2                                          
                                                                                                                             
    SQL> commit;                                                                                                             
                                                                                                                             
    Commit complete                                                                                                          
                                                                                                                             
    小结:1,对于merge,目标表如果匹配列重复,但源表匹配不重复,会用源表表列新目标表的数据                                     
          2,反之,如果源表匹配列重复,此时merge就会报错,因为不知用源表哪条记录来更新目标表的数据 

     转自   

     http://blog.itpub.net/9240380/viewspace-750968/

  • 相关阅读:
    PCB 设计文件中哪些可以不做成元件
    IAR 9+ 编译 TI CC2541 出现 Segment ISTACK (size: 0xc0 align: 0) is too long for segment definition.
    每日一条 git 命令行:git clone https://xxxxx.git -b 12.0 --depth 1
    FastAdmin Bootstrap-table 特定某行背景变红
    如何查看 ThinkPHP5.1 的升级说明
    Windows 2008 关闭远程桌面的单用户多会话模式
    来测试一下你的“金耳朵”
    笔记:关于网站的流量攻击
    排序算法视频 《6 分钟演示 15 种排序算法》
    【转】移动web页面支持弹性滚动的3个方案
  • 原文地址:https://www.cnblogs.com/SamuelSun/p/6541133.html
Copyright © 2011-2022 走看看