暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 19C 显示执行计划:基本步骤

原创 Asher.HU 2021-02-04
1335


DBMS_XPLAN.DISPLAY功能是显示说明计划的简单方法。

默认情况下,该DISPLAY函数使用的格式设置TYPICAL在这种情况下,计划中计划中最相关的信息:操作ID,名称和选项,行,字节和优化器成本。修剪,并行和谓词信息仅在适用时显示。

要显示执行计划:

  1. 启动SQL * Plus或SQL Developer,然后登录到您在其中解释了该计划的会话。
  2. 解释一个计划。
  3. PLAN_TABLE使用查询DBMS_XPLAN.DISPLAY

    指定查询,如下所示:

    SELECT PLAN_TABLE_OUTPUT FROM TABLE(DBMS_XPLAN.DISPLAY);
    

    或者,使用statement_id参数指定语句ID 

    SELECT PLAN_TABLE_OUTPUT FROM TABLE(DBMS_XPLAN.DISPLAY(statement_id => 'statement_id));
    

示例6-2语句ID ex_plan1的EXPLAIN PLAN

本示例说明employees使用语句ID的ex_plan1查询,然后查询PLAN_TABLE

EXPLAIN PLAN 
  SET statement_id = 'ex_plan1' FOR
  SELECT phone_number 
  FROM   employees
  WHERE  phone_number LIKE '650%';

SELECT PLAN_TABLE_OUTPUT 
  FROM TABLE(DBMS_XPLAN.DISPLAY(statement_id => 'ex_plan1'));

输出示例如下:

Plan hash value: 1445457117

-------------------------------------------------------------------------------
| Id  | Operation         | Name      | Rows  | Bytes | Cost (%CPU)| Time     |
-------------------------------------------------------------------------------
|   0 | SELECT STATEMENT  |           |     1 |    15 |     2   (0)| 00:00:01 |
|*  1 |  TABLE ACCESS FULL| EMPLOYEES |     1 |    15 |     2   (0)| 00:00:01 |
-------------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   1 - filter("PHONE_NUMBER" LIKE '650%')

示例6-3语句ID ex_plan2的EXPLAIN PLAN

本示例说明了employees使用语句ID 的查询ex_plan2,然后使用以下BASIC格式显示计划

EXPLAIN PLAN 
  SET statement_id = 'ex_plan2' FOR
  SELECT last_name 
  FROM   employees
  WHERE  last_name LIKE 'Pe%';

SELECT PLAN_TABLE_OUTPUT 
  FROM TABLE(DBMS_XPLAN.DISPLAY(NULL, 'ex_plan2','BASIC'));

输出示例如下:

----------------------------------------
| Id  | Operation        | Name        |
----------------------------------------
|   0 | SELECT STATEMENT |             |
|   1 |  INDEX RANGE SCAN| EMP_NAME_IX |
----------------------------------------

也可以看看:

《 Oracle数据库PL / SQL软件包和类型参考》以获取有关该DBMS_XPLAN软件包的 更多信息

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论