首页 > 其他 > 详细

Merge into 使用

时间:2014-07-05 19:00:03      阅读:290      评论:0      收藏:0      [点我收藏+]

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

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

举个例子吧:

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

注意:

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

 

 

Merge into 使用,布布扣,bubuko.com

Merge into 使用

原文:http://www.cnblogs.com/programsky/p/3822610.html

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