Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2339701
  • 博文数量: 2110
  • 博客积分: 18861
  • 博客等级: 上将
  • 技术积分: 24420
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-05 18:23
文章分类

全部博文(2110)

文章存档

2011年(139)

2010年(1971)

我的朋友

分类: Oracle

2010-10-27 11:21:29

 从Oracle9i开始,索引跳跃式扫描特性可以允许优化器使用组合索引,即便索引的前导列没有出现在WHERE子句中。索引跳跃式扫描比全索引扫描要快的多。下面的程序清单显示出性能的差别:

  create index idx_skip on emp5(job,empno);

  index created.

  select count(*)

  from emp5

  where empno=7900;

  Elapsed:00:00:03.13

  Execution Plan

  0 SELECT STATEMENT Optimizer=CHOOSE(Cost=4 Card=1 Bytes=5)

  1 0 SORT(AGGREGATE)

  2 1 INDEX(FAST FULL SCAN) OF 'idx_skip'(NON-UNIQUE)

  Statistics

  6826 consistent gets

  6819 physical reads

  select /*+ index(emp5 idx_skip)*/ count(*)

  from emp5

  where empno=7900;

  Elapsed:00:00:00.56

  Execution Plan

  0 SELECT STATEMENT Optimizer=CHOOSE(Cost=6 Card=1 Bytes=5)

  1 0 SORT(AGGREGATE)

  2 1 INDEX(SKIP SCAN) OF 'idx_skip' (NON-UNIQUE)

  Statistics

  21 consistent gets

  17 physical reads

阅读(360) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~