zoukankan      html  css  js  c++  java
  • index_ss hint 使用的运行计划变化对照

    index_ss  hint 使用的运行计划变化对照

    当中 buffer 代表:当前操作中发生的内存读次数,包括一致性读和当前读

    尽管 emp 表记录数不多,可是buffer 读内存的次数区别还是有点大的

    SQL>  select  job from emp where ename='SMITH';

    JOB
    ------------------
    CLERK

    SQL> select * from table(dbms_xplan.display_cursor(null,null,'allstats last'))

    PLAN_TABLE_OUTPUT
    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    SQL_ID  at8ssqpn41css, child number 0
    -------------------------------------
     select /*+ index_ss(emp i_emp)*/ job from emp where ename='SMITH'

    Plan hash value: 3956160932

    ------------------------------------------------------------------------------------
    | Id  | Operation         | Name | Starts | E-Rows | A-Rows |   A-Time   | Buffers |
    ------------------------------------------------------------------------------------
    |*  1 |  TABLE ACCESS FULL| EMP  |      1 |      1 |      1 |00:00:00.01 |       8 |
    ------------------------------------------------------------------------------------

    PLAN_TABLE_OUTPUT
    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    Predicate Information (identified by operation id):
    ---------------------------------------------------

       1 - filter("ENAME"='SMITH')


    17 rows selected.

    ----创建一个索引

    SQL>  create index i_emp on emp(empno, ename);

    Index created.

    SQL> select /*+ index_ss(emp i_emp)*/ job from emp where ename='SMITH';

    JOB
    ------------------
    CLERK

    SQL>  select * from table(dbms_xplan.display_cursor(null,null,'allstats last'))
      2  ;

    PLAN_TABLE_OUTPUT
    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    SQL_ID  ck2pc7bpbzdz8, child number 0
    -------------------------------------
    select /*+ index_ss(emp i_emp)*/ job from emp where ename='SMITH'

    Plan hash value: 98078853

    -----------------------------------------------------------------------------------------------
    | Id  | Operation                   | Name  | Starts | E-Rows | A-Rows |   A-Time   | Buffers |
    -----------------------------------------------------------------------------------------------
    |   1 |  TABLE ACCESS BY INDEX ROWID| EMP   |      1 |      1 |      1 |00:00:00.01 |       3 |
    |*  2 |                 INDEX SKIP SCAN           | I_EMP |      1 |      1 |      1 |00:00:00.01 |       2 |

    PLAN_TABLE_OUTPUT
    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    -----------------------------------------------------------------------------------------------

    Predicate Information (identified by operation id):
    ---------------------------------------------------

       2 - access("ENAME"='SMITH')
           filter("ENAME"='SMITH')


    19 rows selected.

  • 相关阅读:
    ORA-12543: TNS:destination host unreachable
    Visual Studio 2008 连接云端 visualstudio.com
    将博客搬至CSDN
    Shiro 系列笔记(一)
    Centos 6.7 安装jdk
    Centos service启动失败原因--权限问题
    form表单提交的ajax形式
    slf4j与mybatis结合显示sql
    Docker 部署 redis教程,附带部分小建议,防止踩坑
    Android中的EditText默认时不弹出软键盘的方法
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/4011302.html
Copyright © 2011-2022 走看看