SQL Formatter
Embeleze e formate consultas SQL brutas com indentação configurável, capitalização de palavras-chave e suporte a dialetos MySQL, PostgreSQL e T-SQL.
Opções de Formatação
Entrada SQL
SQL Formatado
Formatted SQL will appear here…Ferramentas Relacionadas
Sobre o Formatador SQL
Como Funciona
- Tokeniza seu SQL em palavras-chave, identificadores, operadores e literais
- Re-indenta palavras-chave de cláusula (SELECT, FROM, WHERE, JOIN, etc.) em novas linhas
- Preserva strings entre aspas, comentários e identificadores exatamente como escritos
- Aplica a capitalização de palavras-chave escolhida (MAIÚSCULAS, minúsculas ou preservar)
- Suporta dialetos SQL padrão, MySQL, PostgreSQL e T-SQL
Casos de Uso Comuns
- Tornar consultas ORM auto-geradas legíveis para depuração
- Revisar planos de consulta e lógica de execução em revisões de código
- Preparar SQL para documentação ou compartilhamento com colegas de equipe
- Normalizar SQL em caixa mista ou minificado de arquivos de log
- Limpar scripts de migração gerados por máquina
Perguntas Frequentes
Quais dialetos SQL o formatador suporta?
O formatador suporta SQL padrão, MySQL, PostgreSQL e T-SQL (SQL Server). Selecionar um dialeto ajusta as dicas de aspas para identificadores e o tratamento de palavras-chave específicas do dialeto, para que a saída seja consistente com o mecanismo de banco de dados alvo.
A formatação altera o significado da minha consulta?
Não. O formatador apenas altera espaços em branco e capitalização de palavras-chave — ele nunca reescreve, reordena ou remove qualquer parte da sua consulta. A saída formatada é semanticamente idêntica à entrada original.
O que é o estilo vírgula-primeiro?
O estilo vírgula-primeiro (também chamado de leading-comma) coloca a vírgula no início de cada novo item em uma lista em vez de no final do anterior. Algumas equipes preferem isso porque facilita a identificação de vírgulas ausentes em diffs de controle de versão.
Por que devo usar MAIÚSCULAS para palavras-chave SQL?
Usar MAIÚSCULAS para palavras reservadas (SELECT, FROM, WHERE, etc.) e minúsculas para identificadores (nomes de tabelas e colunas) é a convenção de estilo SQL mais amplamente adotada. Melhora a legibilidade e distingue imediatamente palavras-chave da linguagem de nomes definidos pelo usuário.
Posso formatar várias instruções SQL de uma vez?
Sim. Cole várias instruções separadas por ponto e vírgula e o formatador processará cada uma. Cada ponto e vírgula é preservado no final de sua instrução na saída.
Strings entre aspas e comentários são preservados exatamente?
Sim. O tokenizador trata strings entre aspas simples, identificadores entre aspas duplas, identificadores de crase, identificadores de colchetes, e comentários -- de uma linha e /* em bloco */ como tokens opacos. Seu conteúdo nunca é modificado.
A ferramenta envia meu SQL para um servidor?
Não. Toda a formatação é realizada inteiramente no seu navegador usando JavaScript. Suas consultas SQL nunca são transmitidas para nenhum servidor, então nomes de esquemas sensíveis, nomes de colunas e literais de dados permanecem completamente privados.
Quais opções de indentação estão disponíveis?
Você pode escolher entre 2 espaços, 4 espaços ou um caractere de tabulação para indentação. A indentação com 2 espaços é comum em projetos adjacentes ao JavaScript, enquanto a indentação com 4 espaços é padrão em muitos guias de estilo SQL. A indentação com tabulação permite que cada desenvolvedor ajuste a largura de exibição em seu próprio editor.
Por que a saída da minha subconsulta parece diferente da consulta de nível superior?
Subconsultas dentro de parênteses são indentadas um nível adicional em relação ao seu contexto circundante. Esse aninhamento comunica visualmente a hierarquia lógica e facilita rastrear o fluxo de dados em consultas complexas.
Posso formatar stored procedures ou instruções DDL?
Sim. O formatador lida com CREATE TABLE, ALTER TABLE, INSERT INTO, UPDATE, DELETE e outras instruções DDL/DML. Expressões CASE, blocos BEGIN/END e funções de janela também são indentados corretamente.
Por que as condições JOIN ficam em uma nova linha?
Colocar cada JOIN e sua condição ON/USING em linhas separadas deixa claro quais condições pertencem a qual join, especialmente quando uma consulta tem quatro ou mais joins. Isso é consistente com os guias de estilo SQL mais populares.
Como devo lidar com consultas muito longas?
Cole a consulta completa independentemente do tamanho — o formatador funciona inteiramente no navegador sem round-trip ao servidor, portanto mesmo grandes consultas com centenas de linhas são formatadas instantaneamente. Para consultas extremamente grandes (> 1 MB), você pode notar um breve atraso no processamento.