美文网首页数据库
执行计划与索引访问方式

执行计划与索引访问方式

作者: 风中小酌 | 来源:发表于2020-03-21 07:44 被阅读0次

    打开 PL/SQL,Tools --> Preferences --> Window Types --> Plan Window中,定义需要显示的列元素。
    在 Command Window中,输入SQL语句并选中,
    依次选择菜单 Tools --> Explain Plan 或按下快捷键F5,即可展示出SQL语句的执行效率

    执行顺序

    缩进最多的最先执行,缩进相同,最上边的最先执行。

    表访问的几种方式
    • 全表扫描 TABLE ACCESS FULL
      读取表中所有行,与where子句进行比较,不建议使用,如果需要读取的数据量达到全表数据5%以上可用。
    • 通过ROWID的表存取 TABLE ACCESS BY INDEX ROWID
      读取单行数据最快的方法
    • 索引扫描 TABLE ACCESS BY INDEX SCAN
      扫描索引得到对应的ROWID;
      通过ROWID定位到具体的行读取数据。
      索引扫描方式
      INDEX UNIQUE SCAN 索引唯一扫描
      每次至多返回一条记录,表中某字段存在 UNIQUE PRIMARY约束时,实现的扫描方式。
      INDEX RANGE SCAN 索引范围扫描
      使用一个索引存取多行数据,
      在唯一索引上使用了范围操作符 > < between;
      在组合索引上,只使用了部分列查询(必须包含前导列,否则会走全表扫描);
      对非唯一索引上的任何查询
      INDEX FULL SCAN 索引全扫描
      查询出的数据都必须从索引中可以直接得到,查询结果会排序
      INDEX FAST FULL SCAN 索引快速扫描
      查询结果不排序
      INDEX SKIP SCAN 跳跃扫描
      表中一个复合索引,且在查询时有除了前导列外的其它作为条件。

    相关文章

      网友评论

        本文标题:执行计划与索引访问方式

        本文链接:https://www.haomeiwen.com/subject/xulzehtx.html