欢迎投稿

今日深度:

oracleMERGEINTO...USING两表关联操作(效率高)

oracleMERGEINTO...USING两表关联操作(效率高)


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

比如: 

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;

www.htsjk.Com true http://www.htsjk.com/oracle/22240.html NewsArticle oracleMERGEINTO...USING两表关联操作(效率高) 数据量小的时候可以使用子查询做两表关联操作;但数据量大的时候子查询效率太低(因为是单条比对) 比如: update person1 p1 set p1.p_name=(select p_...
评论暂时关闭