Pular para o conteúdo
SPCXTools

Formatador de SQL

Transforme códigos SQL longos e bagunçados em consultas limpas, legíveis e com indentação consistente.

Roda localmente — os arquivos não saem do seu dispositivo

Carregando ferramenta…

Como usar: Formatador de SQL

  1. 1Cole sua consulta SQL na caixa de Entrada ou clique em Exemplo para testar.
  2. 2Escolha o seu dialeto SQL para que a sintaxe específica do banco de dados seja reconhecida.
  3. 3Escolha como as palavras-chave devem aparecer — MAIÚSCULAS, minúsculas ou como foram escritas — e a indentação.
  4. 4Copie a consulta formatada ou baixe-a como um arquivo .sql.

Torne seu SQL legível

Consultas copiadas de logs, geradas por um ORM ou escritas às pressas costumam virar uma única linha longa, difícil de ler e ainda pior para depurar. Este formatador de SQL divide sua consulta em cláusulas claras — SELECT, FROM, JOIN, WHERE, GROUP BY, ORDER BY —, coloca cada coluna e condição em sua própria linha e indenta subconsultas e expressões CASE de forma consistente. O resultado é mais fácil de revisar, comparar no controle de versão e compartilhar com os colegas.

Recursos

  • 12 dialetos SQL, do SQL padrão ao MySQL, PostgreSQL, SQL Server, Oracle, BigQuery e Snowflake.
  • Maiúsculas e minúsculas: UPPER, lower ou exatamente como escrito; aplica-se a palavras-chave, tipos de dados e funções.
  • Indentação com 2 espaços, 4 espaços ou tabs.
  • Múltiplas instruções separadas por ponto e vírgula.
  • Comentários preservados — tanto os de linha -- quanto os de bloco /* */.
  • Copiar ou baixar o resultado como um arquivo .sql.
  • Privado: o formatador roda localmente no seu navegador.

Antes e depois

Uma consulta como esta:

select u.id, u.name, count(o.id) as orders from users u left join orders o on o.user_id = u.id where u.status = 'active' group by u.id, u.name order by orders desc;

fica assim:

SELECT
  u.id,
  u.name,
  COUNT(o.id) AS orders
FROM
  users u
  LEFT JOIN orders o ON o.user_id = u.id
WHERE
  u.status = 'active'
GROUP BY
  u.id,
  u.name
ORDER BY
  orders DESC;

Dicas de estilo SQL

  • Uma cláusula por linha. Iniciar cada cláusula principal em uma nova linha facilita a visualização da estrutura da query.
  • Use aliases significativos. Aliases curtos como u e o funcionam bem para queries pequenas, mas os descritivos ajudam em relatórios longos.
  • Qualifique os nomes das colunas em joins (orders.user_id em vez de user_id) para evitar ambiguidades.
  • Mantenha a formatação consistente em todo o projeto para que os diffs mostrem mudanças reais, e não espaços em branco.

Ferramentas relacionadas

Trabalhando com resultados de queries? Converta dados exportados com o CSV para JSON, formate respostas de API com o Formatador JSON ou compare duas versões de uma query com o Comparador de Diff.

Perguntas frequentes

Quais dialetos SQL são suportados?
SQL Padrão, MySQL, MariaDB, PostgreSQL, SQLite, SQL Server (T-SQL), Oracle PL/SQL, Google BigQuery, Snowflake, Amazon Redshift, Spark SQL e IBM Db2. Escolher o dialeto certo é importante para a sintaxe específica do banco de dados, como identificadores com crase, colchetes, strings delimitadas por cifrão ou operadores especiais.
A formatação muda o que a minha query faz?
Não. O formatador altera apenas espaços em branco, quebras de linha e, se você escolher, o uso de maiúsculas e minúsculas em palavras-chave, tipos de dados e nomes de funções. Nomes de tabelas, colunas, strings e comentários permanecem exatamente como estão.
Por que estou recebendo um erro?
O formatador precisa entender a estrutura da sua query. Erros geralmente indicam um erro de digitação, uma aspa ou parêntese não fechado, ou uma sintaxe de outro banco de dados — tente selecionar outro dialeto. Placeholders de templates como {{ name }} também podem confundir o parser.
Posso formatar várias instruções de uma vez?
Sim. Separe as instruções com ponto e vírgula e cada uma será formatada, com uma linha em branco entre elas.
Meu SQL é enviado para um servidor?
Não. A formatação acontece totalmente no seu navegador, então você pode formatar com segurança queries que contêm nomes de tabelas internas ou dados de exemplo.
As palavras-chave do SQL devem ser em maiúsculas?
O SQL não diferencia maiúsculas de minúsculas (case-insensitive) para palavras-chave, então é uma questão de estilo. Palavras-chave em maiúsculas (SELECT, FROM, WHERE) são a convenção tradicional porque se destacam dos nomes de tabelas e colunas, enquanto muitas equipes modernas preferem minúsculas. Escolha um padrão e use-o de forma consistente.