EXPLAIN ステートメントは、SELECT ステートメントのアクセス・パス選択に関する情報を取得します。取得した情報は、DB2ePLANTABLE という名前のユーザー表に入れられます。
EXPLAIN ステートメントは、以下のプラットフォームでサポートされます。
呼び出し
このステートメントは、アプリケーション・プログラム内で DB2 CLI 関数を用いて使用することができます。 また、CLP を介して出すこともできます。
構文
>>-EXPLAIN--SET QUERYNO=整数--FOR--SELECT ステートメント-------><
説明
規則
整数 値は正でなければなりません。
注意事項
create table "DB2ePLANTABLE" (query_no int, plan_no int, table_name char(18), index_name char(18), sort_temp char(1), expl_timestamp timestamp, remarks varchar(300))
表 15 は DB2ePLANTABLE 列を説明したものです。
例
新規のアプリケーションを開発する場合は、SELECT ステートメントに対してどのアクセス・パスを選択するかを決定することをお勧めします。この例では、新規のアプリケーションが SALES 表と EMPLOYEES 表を照会しています。EXPLAIN ステートメントは、SELECT ステートメントに対して適切な索引が選択されているかどうかを示しています。
EXPLAIN SET QUERYNO = 100 FOR SELECT E.EMPNAME, S.SALES_AMOUNT FROM SALES S, EMPLOYEES E WHERE S.EMPNO = E.EMPNO AND S.MONTH = ? Index XSALES on SALES(MONTH) Index XEMP on EMPLOYEES(EMPNO) SELECT QUERY_NO, PLAN_NO, TABLE_NAME, INDEX_NAME, SORT_TEMP FROM "DB2ePLANTABLE" QUERY_NO PLAN_NO TABLE_NAME INDEX_NAME SORT_TEMP ------------------------------------------------------------------------------------------- 100 1 SALES XSALES - 100 2 EMPLOYEE XEMP -
関連した解説