Ir para o conteúdo
Totalmente local

Extrator de tabelas e colunas SQL

Lista todas as tabelas, joins e colunas que uma consulta SQL lê, agrupadas por cláusula.

Entrada
Saída

Extrator de tabelas e colunas SQL

Cole uma consulta SQL SELECT e esta ferramenta lê exatamente o que ela toca: quais tabelas ela consulta, como essas tabelas estão ligadas, e quais colunas vêm da lista SELECT, da cláusula WHERE, de GROUP BY e de ORDER BY. Foi construída para o momento em que você herda uma consulta de relatório, um endpoint lento, ou a migração de outra pessoa e precisa saber seu verdadeiro alcance antes de alterar qualquer coisa.

Os aliases de tabelas são resolvidos automaticamente, então "o.total" em uma consulta que começa com "FROM orders o" é reportado com o nome real da tabela. Cada JOIN é listado com seu tipo — inner, left, right, full, cross, ou um join comma — juntamente com sua condição ON ou lista USING, para que a forma da consulta seja visível. Desative "Mostrar colunas em WHERE / GROUP BY / ORDER BY" para ver apenas o que é selecionado, ou desative "Mostrar condições de join" para manter a lista de joins. Alterne a saída entre uma visão geral por cláusula e uma lista de dependências plana mais adequada para documentar do que uma consulta depende.

Expressões de tabela comuns (WITH …) e subconsultas na cláusula FROM também são reconhecidas: uma CTE é listada com as tabelas que seu próprio corpo lê, e uma tabela derivada aparece como uma subconsulta. Quando uma consulta une duas ou mais tabelas e uma coluna não tem prefixo de tabela, a ferramenta não consegue saber a qual tabela ela pertence — com "Avisar sobre colunas sem tabela" ativado, essa coluna é sinalizada. Cole várias instruções separadas por ponto-e-vírgula e cada uma é numerada e analisada independentemente; qualquer coisa que não seja uma consulta SELECT é anotada e ignorada.

Este é um leitor de padrões de texto, não uma conexão de banco de dados: ele nunca executa o SQL, nunca se conecta a um servidor, e a consulta nunca deixa seu navegador. É seguro colar consultas de produção, incluindo aquelas com nomes reais de tabelas e colunas. Quando terminar, copie o relatório, baixe como um arquivo .txt, ou envie para outro programa para continuar trabalhando.

FAQ

Executa ou valida o SQL?
Não. Ele lê a consulta como texto para encontrar referências de tabela, join e coluna — ele nunca executa nada contra um banco de dados, então funciona mesmo em SQL que você não tem uma conexão no momento.
Como ela sabe a qual tabela uma coluna pertence?
Ela constrói um mapa de aliases a partir das cláusulas FROM e JOIN, então "o.id" resolve para "orders" se a consulta tem "FROM orders o". Uma coluna nua sem prefixo é atribuída à única tabela em escopo, ou sinalizada como ambígua quando há mais de uma.
Suporta JOINs, CTEs e subconsultas?
Sim. Todos os tipos de JOIN são reconhecidos com sua condição, uma cláusula WITH é separada como uma CTE nomeada com as tabelas que ela lê, e uma subconsulta na cláusula FROM é listada como uma tabela derivada em vez de uma real.
Posso colar mais de uma consulta de uma vez?
Sim. Separe as instruções com ponto-e-vírgula e cada uma é numerada e analisada independentemente. Uma instrução que não é uma consulta SELECT é anotada em vez de ser mal lida.
Meu SQL é carregado em algum lugar?
Não. A análise é executada inteiramente em seu navegador — sua consulta, incluindo quaisquer nomes reais de tabelas e colunas, nunca deixa seu dispositivo.