Formatador de plano EXPLAIN SQL
Transforme um plano EXPLAIN ou EXPLAIN ANALYZE em uma árvore legível e indentada com as partes lentas marcadas.
Formatador de plano EXPLAIN SQL
Cole a saída bruta de EXPLAIN ou EXPLAIN ANALYZE e esta ferramenta transforma a parede de texto numa árvore indentada de operações, com o custo, contagem de linhas e tempo de cada nó alinhados ao lado. Em vez de analisar um bloco denso de anotações "cost=… rows=… actual time=…", obtém uma forma que pode ler num relance — qual análise alimenta qual junção, e onde a consulta realmente gasta o seu tempo.
Escolha o dialeto que corresponde à sua base de dados: EXPLAIN ANALYZE do PostgreSQL e MySQL usam a mesma árvore indentada "-> ", EXPLAIN tabular clássico do MySQL é analisado linha por linha, e EXPLAIN QUERY PLAN do SQLite tem o seu próprio formato ASCII-árvore e id/parent. Cole texto simples ou mude o formato de entrada para JSON para EXPLAIN (FORMAT JSON) do PostgreSQL e saída EXPLAIN FORMAT=JSON do MySQL. Mostrar contagem de linhas alterna as figuras de linhas estimadas versus reais, o limite de nó custoso controla que percentagem do custo total ou tempo faz um nó merecer a marca "custoso", e ocultar nós abaixo permite podar ramos de baixo custo de um plano comprido para destacar os desvios. Alterne a saída entre uma árvore indentada e uma tabela alinhada simples.
O custo e tempo que cada nó relata são cumulativos — já incluem todos os filhos — então a ferramenta subtrai os filhos de cada nó antes de classificar qualquer coisa, o que impede que o nó de nível superior da consulta pareça sempre o "custoso". A linha de resumo sob o plano totaliza as operações, conta quantas foram marcadas, e nomeia o ramo mais lento de raiz para folha para saber exatamente qual cadeia de operações investigar primeiro.
Tudo funciona localmente no seu navegador — um plano de consulta pode revelar nomes de tabelas e índices que preferiria não colar num formulário web aleatório, e nada é carregado para lado algum. Copie a árvore formatada, descarregue-a como ficheiro .txt, ou reenvie a saída para a entrada para ajustar o limite e reformatar.