ORACLEsqlmergeintoupdatewhere条件位置与性能消耗

    环境:
    操作系统版本:linux redhat 6.6
    数据库版本:oracle 11.2.0.4
    问题描述:今天,实施同事反馈一个很奇怪的问题,就是oracle 数据库的sql merge用法问题,update语句当把分区表的分区键放在匹配关键字
On里,sql语句执行计划显示分区键能起到分区筛选作用:
ORACLE sql merge into update where条件位置与性能消耗
    相反的,如果把update语句where条件里的分区键不放在merge匹配关键字on里,merge into update语句没能正确执行分区表分区筛选,sql语句
和执行计划如下:
ORACLE sql merge into update where条件位置与性能消耗
总结:先说个人对本例子的理解,merge先执行on后边的条件筛选,进而进行数据匹配,匹配上则执行后续的update更新操作,所以,
将分区键放在on后边的条件匹配里,首先进行区分表分区的筛选,避免对分区表的全分区扫描,从而大大降低merge into update语句
对主机cpu资源的消耗。

网站标题:ORACLEsqlmergeintoupdatewhere条件位置与性能消耗
地址分享:http://www.hxwzsj.com/article/gigjgj.html

其他资讯

Copyright © 2025 青羊区翔捷宏鑫字牌设计制作工作室(个体工商户) All Rights Reserved 蜀ICP备2025123194号-14
友情链接: 营销型网站建设 定制网站建设 成都网站制作 企业网站设计 响应式网站设计 企业网站设计 网站设计 成都网站建设 成都h5网站建设 手机网站设计 网站建设方案 企业网站建设公司 营销型网站建设 品牌网站建设 响应式网站设计 营销型网站建设 营销网站建设 温江网站设计 成都网站制作 成都模版网站建设 成都网站制作 四川成都网站设计