码迷,mamicode.com
首页 > 数据库 > 详细

oracle MERGE INTO...USING两表关联操作(效率高)

时间:2014-09-01 10:46:33      阅读:374      评论:0      收藏:0      [点我收藏+]

标签:使用   数据   2014   sp   on   c   ad   sql   oracle   

 数据量小的时候可以使用子查询做两表关联操作;但数据量大的时候子查询效率太低(因为是单条比对)

比如:

update person1 p1 set p1.p_name=(select p_name from person2 where p1.p_id=p2.p_id)  where p1.add_date>to_date('2014-09-01','yyyy-mm-dd')

而使用MERGE INTO...USING 作两表关联操作(增、删、改)就效率非常高

MERGE INTO person1 p1 
        USING (select p_id,p_name from person2 where use='952701' ) p2
        ON ( p1.p_id=p2.p_id )    
        WHEN MATCHED THEN UPDATE SET p1.p_name = p2.p_name where p1.add_date>to_date('2014-09-01','yyyy-mm-dd')
    commit;



oracle MERGE INTO...USING两表关联操作(效率高)

标签:使用   数据   2014   sp   on   c   ad   sql   oracle   

原文地址:http://blog.csdn.net/without0815/article/details/38976723

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!