La sentencia EXPLAIN obtiene información sobre la selección de una vía de acceso para una sentencia SELECT.
La información obtenida se coloca en una tabla de usuario llamada DB2ePLANTABLE.
Esta sentencia puede emitirse mediante la herramienta DB2eCLP.
El valor entero debe ser positivo.
create table "DB2ePLANTABLE" (query_no int, plan_no int, table_name char(128), index_name char(128), sort_temp char(1), expl_timestamp timestamp, remarks varchar(300))
| Nombre de la columna | Descripción |
|---|---|
| query_no | Número entero que asocia la sentencia EXPLAIN con los datos de salida dentro de DB2ePLANTABLE. |
| plan_no | Número entero que representa los pasos en los que se ejecuta la sentencia (en orden ascendente). |
| table_name | El nombre de la tabla o nombre correlacionado que identifica unívocamente la tabla, o un valor nulo si no es aplicable un nombre. |
| index_name | El nombre del índice (si se utiliza) para acceder a la tabla. Devuelve un valor nulo si no se utiliza ningún índice. |
| sort_temp | 'Y' significa que es necesario realizar una clasificación en una tabla temporal para procesar una sentencia GROUP BY o ORDER BY. Si se devuelve un valor nulo, significa que no es necesaria ninguna tabla temporal de clasificación. |
| expl_timestamp | Indicación horaria del momento en que se ejecuta la sentencia EXPLAIN. |
| comentarios | La columna de comentarios contiene el valor nulo. El usuario puede añadir comentarios a esta columna con fines contables. |
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 -