まず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 件のコメント:
コメントを投稿