Ir para o conteúdo
TextArray
Totalmente local

Formatador SQL

Formate consultas SQL com cada cláusula em sua própria linha, recuo consistente e palavras-chave em maiúsculas.

Entrada
Saída

Formatador SQL

Cole qualquer consulta SQL e recupere-a legível: SELECT, FROM, WHERE, JOIN, GROUP BY, HAVING, ORDER BY e as outras cláusulas principais iniciam cada uma sua própria linha, as condições AND e OR continuam recuadas abaixo delas, e cada coluna na lista de seleção pode ficar em sua própria linha. Escolha dois espaços, quatro espaços ou tabulações para recuo e escolha se as palavras-chave devem ser maiúsculas - a clássica capitalização SELECT/FROM/WHERE que torna a estrutura visível à primeira vista.

O formatador é construído em um tokenizer real, não em uma pilha de regras de localização e substituição. Literais de string como 'it''s', identificadores entre aspas em todos os estilos de dialeto ("coluna", \`column\`, [coluna]) e ambos os estilos de comentário (-- linha e /* bloco */) passam byte por byte, portanto, uma palavra-chave dentro de uma string nunca é tocada e uma citação dentro de um comentário nunca a confunde. Apenas os espaços em branco e as maiúsculas e minúsculas das palavras-chave mudam - a consulta que você obtém significa exatamente o que a consulta que você colou significava.

Múltiplas instruções separadas por ponto-e-vírgula são reconhecidas e formatadas como blocos separados, o que torna a ferramenta prática para arquivos de migração e scripts iniciais, e não apenas para consultas únicas. É honesto sobre seus limites: subconsultas profundamente aninhadas permanecem na linha de sua cláusula em vez de serem recuadas novamente, o que mantém o resultado previsível para as consultas que você realmente depura no dia a dia.

Tudo é executado localmente no seu navegador – consultas que contêm nomes de tabelas, credenciais ou dados de produção nunca saem da sua máquina. Copie o resultado ou baixe-o como um arquivo .txt quando terminar.

FAQ

O formatador mudará o que minha consulta faz?
Não. Somente espaços em branco e maiúsculas e minúsculas mudam. Literais de string, identificadores entre aspas, comentários, números e operadores passam exatamente como foram escritos, portanto, a consulta formatada é semanticamente idêntica à entrada.
Como são tratadas subconsultas aninhadas complexas?
Este é um formatador de melhor esforço. As cláusulas de nível superior recebem suas próprias linhas, mas o conteúdo dos parênteses — incluindo subconsultas — permanece alinhado na linha de sua cláusula. As palavras-chave dentro das subconsultas ainda estão em letras maiúsculas. Para consultas profundamente aninhadas, o resultado está correto, mas nem sempre recuado perfeitamente.
Quais palavras-chave estão em maiúsculas?
Palavras-chave de cláusula (SELECT, FROM, WHERE, variantes JOIN, GROUP BY, ORDER BY, INSERT INTO, UPDATE, DELETE FROM, CREATE TABLE e mais), operadores lógicos (AND, OR, NOT, IN, LIKE, BETWEEN) e tipos de colunas comuns. Nomes de funções como count() são deixados de lado e nada dentro de strings, identificadores entre aspas ou comentários é alterado.
Posso formatar várias declarações de uma vez?
Sim. As instruções separadas por ponto e vírgula de nível superior são formatadas como blocos separados com uma linha em branco entre elas. Ponto-e-vírgula dentro de literais de string são ignorados, como deveriam ser.
Meu SQL é carregado em algum lugar?
Não. A ferramenta é executada inteiramente no seu navegador e suas consultas nunca saem do seu dispositivo – seguras até mesmo para SQL que faz referência a esquemas de produção.

Leitura complementar