码迷,mamicode.com
首页 > 其他好文 > 详细

index_ss hint 使用的执行计划变化对比

时间:2014-08-27 22:03:58      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:使用   io   for   ar   art   sp   on   c   sql   

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.

index_ss hint 使用的执行计划变化对比

标签:使用   io   for   ar   art   sp   on   c   sql   

原文地址:http://blog.csdn.net/lixora/article/details/38876319

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!