EXPLAIN

EXPLAIN ステートメントは、SELECT ステートメントのアクセス・パス選択に関する情報を取得します。取得した情報は、DB2ePLANTABLE という名前のユーザー表に入れられます。

EXPLAIN ステートメントは、以下のプラットフォームでサポートされます。

呼び出し

このステートメントは、アプリケーション・プログラム内で DB2 CLI 関数を用いて使用することができます。 また、CLP を介して出すこともできます。

構文

>>-EXPLAIN--SET QUERYNO=整数--FOR--SELECT ステートメント-------><
 
 

説明

SET QUERYNO = 整数
整数 と SELECT ステートメントを関連付けます。EXPLAIN ステートメントによって、 プラン表に挿入されたすべての行の QUERYNO 列には整数 値が入ります。
SELECT ステートメント
SELECT ステートメントの結果表の形式で、新規行のセットを指定します。

規則

整数 値は正でなければなりません。

注意事項

新規のアプリケーションを開発する場合は、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          -
 

関連した解説