DBMS_XPLAN:显示Oracle执行计划

  

<代码> DBMS_XPLAN

设置如果不存在创建<代码>斯科特>

<>以前康涅狄格州sysdba sys/密码   @ $ ORACLE_HOME/rdbms/admin/utlsampl。sql

创建一个<代码> PLAN_TABLE>

<>以前康涅狄格州sysdba sys/密码   @ $ ORACLE_HOME/rdbms/admin/utlxplan.sql   创建公共同义词plan_table sys.plan_table;   格兰特sys.plan_table公共所有;

显示函数

<代码>显示>

<>以前康涅狄格州斯科特/老虎      解释计划   SELECT *   从emp e,部门d   e.deptno=d.deptno   和e.ename=笆访芩埂?

接下来我们使用<代码> DBMS_XPLAN。>

<>之前设置线宽130   设置页大小0   SELECT *   从表(DBMS_XPLAN.DISPLAY);      ----------------------------------------------------------------------------------------   | | |操作Id名称| | |行字节成本(% CPU) | |   ----------------------------------------------------------------------------------------   SELECT语句| 0 | | | 1 | 58 | 4 (0)| 00:00:01 |   | 1 |嵌套循环| | | | | |   | 2 |嵌套循环| | 1 | 58 | 4 (0)| 00:00:01 |   | * 3 |表访问全部| EMP 38 | | 1 | 3 (0) | 00:00:01 |   | * 4 |索引独特的扫描| PK_DEPT | 1 | | 0 (0) | 00:00:01 |   | 5 |通过索引表访问ROWID |部门| 1 | 20 | 1 (0)| 00:00:01 |   ----------------------------------------------------------------------------------------      谓词信息(由操作id):   ---------------------------------------------------      3 -过滤器(“E”。“ENAME”=笆访芩埂?   4 -访问(“E”,“DEPTNO”=癉”。“DEPTNO”)      18行选择。      SQL>

<代码> DBMS_XPLAN。> <李>

table_name - <代码> PLAN_TABLE名称> <>

statement_id - id显示计划的声明。默认值为空,显示最近的执行计划的<代码> PLAN_TABLE> <>

格式-控制水平的细节显示,默认值“典型”。其他值包括“基本”、“所有”,“连续”。还有一个无证“高级”设置。



注意。李从Oracle 10 g版本2> <>

sql_id——<代码> sql_id> SQL_ID> V $ SQL代码和<代码> V $ SQLAREA> V $会话使用<代码> 视图PREV_SQL_ID> <>

child_number——孩子的光标指定的<代码> SQL_ID> SQL_ID diaplyed> <>

格式——除了设置用于<代码>显示> <>



下面的示例展示了先进的输出查询“DEPTNO”)。      列投影信息(由操作id标识):   -----------------------------------------------------------      1 -“E”。“EMPNO”号,22,“E”。“ENAME”[VARCHAR2 10],“E”。“工作”(VARCHAR2 9),   “E”,“经理”(数字,22),“E”。“HIREDATE”[日期7],“E”。“萨尔”号码,22,   “E”。“通讯”(数字,22),“E”。“DEPTNO”号,22,“D”。“DEPTNO”号,22,   “D”。“DNAME”[VARCHAR2 14],“D”。“疯狂的”(VARCHAR2, 13)   2 -“E”。“EMPNO”号,22,“E”。“ENAME”[VARCHAR2 10],“E”,“工作”(VARCHAR2, 9)   “E”,“经理”(数字,22),“E”。“HIREDATE”[日期7],“E”。“萨尔”号码,22,   “E”。“通讯”(数字,22),“E”。“DEPTNO”号,22,“D”.ROWID (ROWID (10),   “D”。“DEPTNO”(数字,22)   3 -“E”。“EMPNO”号,22,“E”。“ENAME”[VARCHAR2 10],“E”。“工作”(VARCHAR2 9),   “E”,“经理”(数字,22),“E”。“HIREDATE”[日期7],“E”。“萨尔”号码,22,   “E”。“通讯”(数字,22),“E”。“DEPTNO”(数字,22)   4 -“D”.ROWID (ROWID (10),“D”。“DEPTNO”(数字,22)   5 -“D”。“DNAME”[VARCHAR2 14],“D”。“疯狂的”(VARCHAR2, 13)      67行选中。      SQL>

DBMS_XPLAN:显示Oracle执行计划