type query plan full ejecucion describe mysql oracle firebird sql-execution-plan ingres

mysql - query - EXPLAIN SELECT en otras bases de datos



plan de ejecucion mysql workbench (6)

Considero que la consulta EXPLAIN SELECT es muy útil en MySQL porque proporciona información sobre cómo se ejecutará SQL y brinda la oportunidad de analizar, por ejemplo, los índices faltantes que debe agregar para mejorar la respuesta ANTES de realizar la consulta y analizar las estadísticas.

Mi pregunta es: en bases de datos como MS Sql, Firebird, Ingres, ¿hay un comando similar disponible?

En Firebird tenemos PLAN, pero es muy débil porque muchas veces uno tiene que ejecutar consultas muy largas para ver un error simple.

Atentamente,

Mauro h. Leggieri



MS SQL tiene una utilidad en Management Studio llamada Display Execution Plan (Estimated and Exact Plan) cuando se ejecuta una consulta. también puede mostrar estadísticas para la consulta (tiempo de ejecución, número de filas, tráfico, etc.)


Para Ingres, lo siguiente le dará el plan final elegido con estimaciones en cuanto al número de filas, E / S de disco y ciclos de CPU:

set qep

Para obtener el plan pero no ejecutar el SELECT también agregar.

set optimizeonly

volver a habilitar la ejecución de la consulta:

set nooptimizeonly

para obtener las estadísticas reales de la consulta ejecutada, para comparar con el resultado de "set qep":

set trace point qe90

Consulte http://docs.ingres.com/Ingres/9.2/SQL%20Reference%20Guide/set.htm para obtener más información sobre lo anterior.



Para el servidor mssql puedes usar

SET SHOWPLAN_TEXT ON and SET SHOWPLAN_TEXT OFF

esto evitará que las consultas se realicen realmente pero devolverá el plan de consulta.

Para oráculo puedes usar

SET AUTOTRACE ON or EXPLAIN PLAN

(No sé sobre firebird o ingresé)


En Oracle :

EXPLAIN PLAN FOR SELECT …

En PostgreSQL :

EXPLAIN SELECT …

En SQL Server :

SET SHOWPLAN_XML ON GO SELECT … GO