`

《Pro Oracle SQL》Chapter3--3.2.7 Index Fast Full Scan

阅读更多

Index Fast Full Scan  索引快速全扫描    (page 109)
    An index fast full scan is more like a full table scan than like other index scan types.  When an index
fast full scan operation is chosen, all the index blocks are read using multiblock reads.  This type of
scan is chosen as an alternative to a full table scan when all the columns needed to satisfy the query’s
column list
are included in the index and at least one column in the index has the  NOT NULL constraint.
 

In this case, the data is accessed from the index instead of having to access table blocks.  Unlike other
index scan types, the index fast full scan cannot be used to avoid a sort since the blocks are read using
unordered multiblock reads.
  Listing 3-16 shows an example of an index fast full scan plan.
    索引快速全扫描相比其他的索引扫描类型更像全表扫描。当索引快速全扫描被选择,则所有的索引块使用多块读读取。当查询列集中的所有列 都被包含在索引中且至少索引中的一列有NOT NULL约束,则会选择这种类型的扫描作为全表扫描的替代。 这种情况下,数据通过索引访问而不是必须访问表块。不像其他的索引扫描类型,索引快速全扫描不能用于避免排序,因为块是用无序的多块读读取的。 列表3-16展示了一个索引快速全扫描计划的例子。
Listing 3-16. Index Fast Full Scan  
SQL> alter table hr.employees modify (email null) ;
 
Table altered.
 
SQL> set autotrace traceonly explain
SQL> select email from hr.employees ;
Execution Plan
----------------------------------------------------------
Plan hash value: 1445457117
 
--------------------------------------------------------------------
| Id  | Operation                      | Name             | Rows  | Bytes | Cost (%CPU)|
--------------------------------------------------------------------
|   0 | SELECT STATEMENT   |                       |   107   |   856  |     3   (0)    |
|   1 |  TABLE ACCESS FULL | EMPLOYEES |   107   |   856  |     3   (0)    |
--------------------------------------------------------------------
 
SQL> set autotrace off
SQL>
SQL> alter table hr.employees modify (email not null) ;
 
Table altered.
 --HR    EMP_EMAIL_UK    Unique    EMAIL 
SQL> set autotrace traceonly explain
SQL> select email from hr.employees ;
Execution Plan
----------------------------------------------------------
Plan hash value: 2196514524
 
----------------------------------------------------------------------
| Id  | Operation                      | Name                  | Rows  | Bytes | Cost (%CPU)|
----------------------------------------------------------------------
|   0 | SELECT STATEMENT  |                            |   107   |   856  |     1   (0)      |
|   1 |  INDEX FULL SCAN      | EMP_EMAIL_UK |   107   |   856  |     1   (0)       |
----------------------------------------------------------------------
 
    This example demonstrates how the index fast full scan operation relies on the  NOT NULL
constraint in order to be chosen.  Without the constraint, a full scan operation is chosen instead.
    本例示例了索引快速全扫描如何依赖于NOT NULL约束而被选中。没有这个约束,就会选中全表扫描操作。

 

注:这里计划是INDEX FULL SCAN而不是i ndex fast full scan

参看如下链接

http://blog.csdn.net/robinson1988/article/details/6173974

先发现这个错误。

 

0
0
分享到:
评论

相关推荐

    environment-modules-3.2.7b-6.el6.i686.rpm

    environment-modules-3.2.7b-6.el6.i686.rpm是lunx工具包 。

    jbosscache-core-3.2.7.GA.jar

    jbosscache-core-3.2.7.GA.jar

    wstx-asl-3.2.7.jar

    wstx-asl-3.2.7.jar

    apache-cxf-3.2.7.zip

    这个"apache-cxf-3.2.7.zip"压缩包包含了CXF的3.2.7版本,它是该框架的一个稳定发行版。在这个版本中,开发者可以找到所有必要的工具和库来创建、部署和管理基于Java的Web服务。 1. **CXF框架介绍**: Apache CXF...

    nsis-3.0.3.2.7z

    nsis-3.0.3.2.7z

    最新apache-cxf-3.2.7

    3. **CXF 3.2.7版本亮点**: - 在这个版本中,CXF可能修复了一些已知的bug,提高了性能和稳定性。 - 可能包含了对新标准和协议的支持。 - 可能改进了与其他库的兼容性,如Spring框架。 4. **使用CXF开发Web服务*...

    spring-webmvc-portlet-3.2.7.RELEASE.jar

    spring-webmvc-portlet-3.2.7.RELEASE.jarspring-webmvc-portlet-3.2.7.RELEASE.jarspring-webmvc-portlet-3.2.7.RELEASE.jarspring-webmvc-portlet-3.2.7.RELEASE.jar

    jpush-client-3.2.7

    《JPush客户端SDK 3.2.7详解》 JPush客户端SDK 3.2.7是极光推送(JPush)为开发者提供的一款高效、稳定的消息推送工具,旨在帮助服务端实现对移动设备的精准消息推送。作为一款功能强大且实用的SDK,它在保证数据...

    spring-core 缺失spring-cglib-repack-3.2.7.jar

    spring-cglib-repack-3.2.7.jar用于idea导入spring源码用

    spring-framework-3.2.7.RELEASE 源码

    《深入剖析Spring Framework 3.2.7.RELEASE源码》 Spring Framework是Java开发领域中的基石,尤其在企业级应用开发中占据了主导地位。3.2.7.RELEASE是其一个稳定版本,包含了丰富的功能和优化。通过深入研究这个...

    Python库 | testwizard.set-top-box-3.2.7.tar.gz

    标题中的“Python库 | testwizard.set-top-box-3.2.7.tar.gz”指的是一个针对Python编程语言的库,名为“testwizard”,其版本号为3.2.7,已经打包成tar.gz格式的压缩文件。这个库可能专门用于智能电视顶盒(set-top...

    Python库 | testwizard.smart-tv-3.2.7.tar.gz

    标题中的"Python库 | testwizard.smart-tv-3.2.7.tar.gz"指的是一个针对智能电视测试的Python库,其版本为3.2.7,并以tar.gz格式压缩。这个库可能包含了用于自动化测试、控制和交互智能电视应用或设备的模块和脚本。...

    mybatis-3-mybatis-3.2.7源码.rar

    在`mybatis-3-mybatis-3.2.7`源码中,我们可以深入理解MyBatis的工作原理和核心机制。以下是一些关键知识点: 1. **SqlSessionFactoryBuilder**:它是构建SqlSessionFactory的工厂类,通过读取配置文件(XML或Java ...

    spring-core-3.2.7.RELEASE-sources.jar (spring 3.2.7源码source)

    spring-core-3.2.7.RELEASE-sources.jar (spring 3.2.7源码source),加载到Eclipse里面进行源码查看。

    spring-core-3.2.7.RELEASE.jar (spring3.2.7的核心jar包)

    spring-core-3.2.7.RELEASE.jar (spring3.2.7的核心jar包),Java开发中spring框架开发必须的依赖包。

    mongodb-linux-x86_64-ubuntu1404-3.2.7.tgz

    MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型。...

    spring-core-3.2.7.RELEASE-javadoc.jar (spring3.2.7的文档doc,即为spring的源码注释)

    spring-core-3.2.7.RELEASE-javadoc.jar (spring3.2.7的文档doc,即为spring的源码注释),导入到eclipse中,就可以查看spring的源码注释,当调用spring的类或者方法时就会显示注释信息。

    舞台灯光控制软件Lj-USBDMX V3.2.7R(可音乐同步播控)

    舞台灯光控制软件Lj-USBDMX V3.2.7R是一款专为专业舞台表演设计的灯光控制系统,它集成了先进的音乐同步功能,能够实现灯光效果与音乐节奏的完美结合,为各种演出活动带来更加生动和震撼的视觉体验。 Lj-USBDMX软件...

    emqx-windows-v3.2.7.zip

    "emqx-windows-v3.2.7.zip" 文件是一个专门为 Windows 操作系统编译的 EMQ X Broker 的版本 3.2.7 安装包。该压缩包包含了在 Windows 上运行 EMQ X 所需的所有组件。 MQTT(Message Queuing Telemetry Transport)...

Global site tag (gtag.js) - Google Analytics