oracle要進(jìn)行查看執(zhí)行計(jì)劃,可以使用explain plan FOR命令
使用方式就是在要查看計(jì)劃的sql前面加上explain plan FOR
然后執(zhí)行后會(huì)生成執(zhí)行計(jì)劃要查看需要使用
select plan_table_output from TABLE(DBMS_XPLAN.DISPLAY('PLAN_TABLE'));
進(jìn)行查看
要注意的是
explain plan FOR
和
select plan_table_output from TABLE(DBMS_XPLAN.DISPLAY('PLAN_TABLE'));
兩個(gè)命令需要在同一個(gè)窗口下運(yùn)行
否則會(huì)報(bào)錯(cuò),
Error: cannot fetch last explain plan from PLAN_TABLE
在同一個(gè)窗口下執(zhí)行后沒有該報(bào)錯(cuò).
例子:
explain plan FOR select 1 from dual;
select plan_table_output from TABLE(DBMS_XPLAN.DISPLAY('PLAN_TABLE'));
Plan hash value: 1388734953
-----------------------------------------------------------------
| Id? | Operation? ? ? ? | Name | Rows? | Cost (%CPU)| Time? ? |
-----------------------------------------------------------------
|? 0 | SELECT STATEMENT |? ? ? |? ? 1 |? ? 2? (0)| 00:00:01 |
|? 1 |? FAST DUAL? ? ? |? ? ? |? ? 1 |? ? 2? (0)| 00:00:01 |
-----------------------------------------------------------------