<span id="be6802d55e"></span><address id="bf6b078518"><style id="bg11819f99"></style></address><button id="bldb22516c"></button>
                        

          澳门威尼斯娯乐城vn5002,澳门威尼斯娱乐平台,威尼斯娱城网址

          首页 > 数据库 > Oracle > SQL优化案例-用left join代替not in反连接(十)

          SQL优化案例-用left join代替not in反连接(十)

          原创 Oracle 作者:哎呀我的天呐 时间:2018-12-06 08:35:08 0 删除 编辑

          sql如下:

          反链接

          SELECT R.ORDER_NO
            FROM KKTRIBE_CORE_BASE.ITEM_ORDER R
           WHERE R.ALLOCATE_COMMISSION_STATUS = 'FINISH'
             AND R.ORDER_NO NOT IN (SELECT ORDER_NO FROM (SELECT B.ORDER_NO, COUNT(*) COUNT_NUM
                                       FROM KKTRIBE_CORE_BASE.ORDER_ALLOCATE_COM_FUND_BILL B
                                             WHERE B.STATUS NOT IN ('FINISH')
                                             GROUP BY B.ORDER_NO) T
                                     WHERE T.COUNT_NUM != 0);
          

          执行计划:


          可以一眼定位问题,至于优化器选取这样的方式显然不好啊,一般not in,not exists中的子查询有group by,union all,union,start with connect by都会产生filter,但是此sql的group by外面还一层,不应该,那么我们改sql好了。

          改成SQL如下:

          SELECT R.ORDER_NO
            FROM KKTRIBE_CORE_BASE.ITEM_ORDER R
            LEFT JOIN (SELECT ORDER_NO
                         FROM (SELECT B.ORDER_NO, COUNT(*) COUNT_NUM
                                 FROM KKTRIBE_CORE_BASE.ORDER_ALLOCATE_COM_FUND_BILL B
                                WHERE B.STATUS NOT IN ('FINISH')
                                GROUP BY B.ORDER_NO) T
                        WHERE T.COUNT_NUM != 0) X
              ON R.ORDER_NO = X.ORDER_NO
           WHERE R.ALLOCATE_COMMISSION_STATUS = 'READY'
             AND X.ORDER_NO IS NULL;
          

          执行计划:

          sql从10分钟到1秒不到,秒出

          来自 “ 澳门威尼斯娯乐城vn5002,澳门威尼斯娱乐平台,威尼斯娱城网址 ” ,链接:/29990276/viewspace-2284319/,如需转载,请注明出处,否则将追究法律责任。

          上一篇: 应用改字符集小记
          下一篇: 没有了~
          请登录后发表评论 登录
          全部评论
          从事Oracle/MySQL工作多年,11g OCM,擅长Oracle/MySQL SQL Tuning & DB Performance,高可用方案架构| 企鹅group:935221403|对Oracle优化、迁移、故障诊断技术感兴趣的朋友欢迎一起学习交流

          注册时间:2014-10-30

          • 博文量
            218
          • 访问量
            1753513