ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle执行计划五

oracle执行计划五

原创 Linux操作系统 作者:leonwoo 时间:2008-06-17 13:37:03 0 删除 编辑
在非唯一索引上,谓词col = 5可能返回多行数据,所以在非唯一索引上都使用索引范围扫描。
       
使用index rang scan的3种情况:
        (a)
在唯一索引列上使用了range操作符(> < <> >= <= between)
        (b)
在组合索引上,只使用部分列进行查询,导致查询出多行
        (c)
对非唯一索引列上进行的任何查询。
       
       
(3) 索引全扫描(index full scan)
       
与全表扫描对应,也有相应的全索引扫描。而且此时查询出的数据都必须从索引中可以直接得到。
全索引扫描的例子:
An Index full scan will not perform. single block i/o's and so it may prove to be inefficient.

e.g.
Index BE_IX is a concatenated index on big_emp (
empno, ename)

SQL> explain plan for select
empno, ename from big_emp order by empno,ename;
Query Plan
--------------------------------------------------------------------------------
SELECT STATEMENT   [CHOOSE] Cost=26
 
 INDEX FULL SCAN BE_IX [ANALYZED]

       
(4) 索引快速扫描(index fast full scan)
       
扫描索引中的所有的数据块,与 index full scan很类似,但是一个显著的区别就是它不对查询出的数据进行排序,即数据不是以排序顺序被返回。在这种存取方法中,可以使用多块读功能,也可以使用并行读入,以便获得最大吞吐量与缩短执行时间。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/79730/viewspace-350519/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: oracle执行计划四
下一篇: oracle执行计划六
请登录后发表评论 登录
全部评论

注册时间:2008-06-16

  • 博文量
    20
  • 访问量
    14330