English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Antes de la sentencia SQLite se puede agregar el nombre propio “EXPLAIN” o la frase “EXPLAIN QUERY PLAN” para describir los detalles de la tabla.
Ambas modificaciones harán que la declaración SQLite se comporte como una consulta y devuelva información sobre cómo se ejecutaría la declaración SQLite si se omitiera el nombre del comando o la frase EXPLAIN.
La salida de EXPLAIN y EXPLAIN QUERY PLAN se utiliza solo para análisis interactivos y resolución de problemas.
Los detalles del formato de salida pueden cambiar de una versión de SQLite a otra.
La aplicación no debería usar EXPLAIN o EXPLAIN QUERY PLAN, ya que su comportamiento exacto es variable y solo una parte se registra.
La sintaxis es la siguiente:Considerar la tabla COMPANY con los siguientes registros
EXPLAIN PLAN QUERY [Consulta SQLite]
Ejemplo en líneaConsiderar la tabla COMPANY con los siguientes registros
SALARIO
EDAD-
NOMBRE ---------- ---------- ---------- ---------- ---------- 1 ID 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Noruega 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 Sur-Hall 45000.0 7 James 24 Houston 10000.0
Ahora, vamos a usar la sentencia SELECT para verificar la siguiente subconsulta-
sqlite> EXPLAIN SELECT * FROM COMPANY WHERE Salary >= 20000;
esto producirá el siguiente resultado.
dir1 p2 p3 ---------- ---------- ---------- ---------- ---------- 0 Goto 19 1 Entero 2 AbrirLectura 8 3 EstablecerNumColu 5 4 Rebobinar 17 5 Columna 4 6 RealAffini 7 Entero 20000 8 Lt 357 16 collseq(BI 9 Rowid 10 Columna 1 11 Columna 2 12 Columna 3 13 Columna 4 14 RealAffini 15 Callback 5 0 16 Siguiente 5 17 Cerrar 18 Detener 19 Transacción 20 VerificarCook 38 21 Goto 1 22 Noop 0 0
Ahora, veamos cómo se utiliza Explain Query Plan en la cláusula SELECT:
SQLite> EXPLAIN QUERY PLAN SELECT * FROM COMPANY WHERE Salary >= 20000; orden de detalle ---------- ---------- ------------- 0 0 TABLA COMPANY