まずexplainすると、その結果はPLAN_TABLEに保存されます。(1)explainしてその結果を保存する (2)保存結果を表示する
結果は、標準スクリプトでテーブル内容を表示できます。SQL> explain plan for select user_id from T01_AQUA1_APPITEM_LIMIT1; Explained.
表関数がサポートされている9i(9iR2?)以上は、DBMS_XPLANパッケージでさらに詳細な情報を表示することもできます。SQL> @?/rdbms/admin/utlxpls.sql PLAN_TABLE_OUTPUT ---------------------------------------------------------------------------------------------- Plan hash value: 4246935464 ---------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ---------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 7421K| 42M| 9167 (2)| 00:01:50 | | 1 | TABLE ACCESS FULL| T01_AQUA1_APPITEM_LIMIT1 | 7421K| 42M| 9167 (2)| 00:01:50 | ----------------------------------------------------------------------------------------------
3つ目の引数を'ALL'にするとパラレルクエリやカラム情報も表示します。
SQ> SELECT PLAN_TABLE_OUTPUT FROM TABLE(DBMS_XPLAN.DISPLAY('plan_table',null,'all'));
PLAN_TABLE_OUTPUT
----------------------------------------------------------------------------------------------
Plan hash value: 4246935464
----------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
----------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 7421K| 42M| 9167 (2)| 00:01:50 |
| 1 | TABLE ACCESS FULL| T01_AQUA1_APPITEM_LIMIT1 | 7421K| 42M| 9167 (2)| 00:01:50 |
----------------------------------------------------------------------------------------------
Query Block Name / Object Alias (identified by operation id):
-------------------------------------------------------------
1 - SEL$1 / T01_AQUA1_APPITEM_LIMIT1@SEL$1
Column Projection Information (identified by operation id):
-----------------------------------------------------------
1 - "USER_ID"[NUMBER,22]
0 件のコメント:
コメントを投稿