zoukankan      html  css  js  c++  java
  • Merge into 使用

    在进行SQL语句编写时,我们经常会遇到这样的问题:当存在记录时,就更新(Update),不存在数据时,就插入(Insert),oracle为我们提供了一种解决方法——Merge into ,具体语法如下:

    MERGE INTO table_name alias1 
    USING (table|view|sub_query) alias2
    ON (join condition) 
    WHEN MATCHED THEN 
        UPDATE table_name 
        SET col1 = col_val1, 
            col2     = col2_val 
    WHEN NOT MATCHED THEN 
        INSERT (column_list) VALUES (column_values); 

    举个例子吧:

    MERGE INTO Table1 T1
    USING (SELECT '001' AS colum1,2 AS colum2 FROM dual) T2
    ON ( T1.colum1=T2.colum1)
    WHEN MATCHED THEN
      UPDATE SET T1.colum2 = T2.colum2
    WHEN NOT MATCHED THEN 
      INSERT (colum1,colum2) VALUES(T2.colum1,T2.colum2);

    注意:

    在使用Merge into的时候千万要注意条件,否则就有可能出现大批量数据被修改的情况!!!

  • 相关阅读:
    P1005 矩阵取数
    [BZOJ2662][BeiJing wc2012]冻结
    [BZOJ1191]超级英雄Hero
    [bzoj1008] 越狱
    [bzoj1001]狼抓兔子 最小割
    网络流24题——负载平衡问题
    分形小山
    可并堆——左偏树、斜堆
    NOIP最优贸易
    洛谷P2073送花
  • 原文地址:https://www.cnblogs.com/programsky/p/3822610.html
Copyright © 2011-2022 走看看