• ORACLE SQL功能优化系列(四)


      来历:网海拾贝




    5.WHERE子句中的毗邻挨次.

    ORACLE采用自下而上的挨次解析WHERE子句,凭证这个事理,表之间的毗邻必须写在其他WHERE条件之前, 那些可以过滤掉最年夜数目纪录的条件必须写在WHERE子句的结尾.

    譬喻:

    (低效,尝试时间156.3秒)

    SELECT …

    FROM EMP E

    WHERE  SAL > 50000

    AND    JOB = ‘MANAGER’

    AND    25 < (SELECT COUNT(*) FROM EMP

                 WHERE MGR=E.EMPNO);

    (高效,尝试时间10.6秒)

    SELECT …

    FROM EMP E

    WHERE 25 < (SELECT COUNT(*) FROM EMP

                 WHERE MGR=E.EMPNO)

    AND    SAL > 50000

    AND    JOB = ‘MANAGER’;


    6.     SELECT子句中防止运用 ‘ * ‘

    当你想在SELECT子句中列出全数的COLUMN时,运用静态SQL列引用 ‘*’ 是一个方便的门径.不幸的是,这是一个希罕很是低效的门径. 实践上,ORACLE在解析的进程中, 会将’*’ 依次转换成全数的列名, 这个变乱是经过过程究诘数据字典完成的, 这意味着将耗费更多的时间.




    版权声明: 原创作品,允许转载,转载时请务必以超链接编制标明文章 原始出处 、作者信息和本声明。否则将清查法令责任。

  • 相关阅读:
    数据库范式
    SQL基础
    JAVA流
    response.getWriter()和jsp中的out对象的区别
    JAVA排序(冒泡,直接选择,反转)
    Collections类常用方法
    JAVA集合
    JAVA面向对象(重载,重写 常用的 toString/equals)
    Java面向对象一(封装 继承 多态 类 对象 方法)
    JAVA基础
  • 原文地址:https://www.cnblogs.com/zgqjymx/p/1976083.html
Copyright © 2020-2023  润新知