Tool overview
O que é Formatador SQL?
Formatador SQL é uma ferramenta que ajuda você a embelezar, formatar e minificar consultas SQL com capitalização de palavras-chave.
Por que usar Formatador SQL?
Melhora a legibilidade e acelera seu fluxo quando você precisa embelezar, formatar e minificar consultas SQL com capitalização de palavras-chave, sem enviar dados a um servidor.
Recursos principais
Privacidade no cliente, resultados instantâneos e cópia com um clique para formatador SQL. Embelezar, formatar e minificar consultas SQL com capitalização de palavras-chave
Como usar
Siga estes passos para obter resultados precisos com a ferramenta acima.
- Cole SQL no painel esquerdo, carregue um ficheiro .sql ou arraste para o estado vazio.
- Selecione um dialecto no menu do cabeçalho (13 opções: Postgres, Snowflake, BigQuery, Spark, Oracle PL/SQL e mais).
- Marque Strip comments para remover anotações -- e /* */ antes da saída; use Beautify para SQL indentado ou Minify para uma linha.
- Copie SQL formatado para migrações, ORMs, folhas de armazém, strings incorporadas ou documentação.
Referência do SQL Formatter
Lista de dialectos, controlos do espaço de trabalho, comportamento Beautify vs Minify, casos de uso e regras de remoção de comentários.
Guia do SQL Formatter — comece aqui
Esta página é o guia canónico para formatar e minificar SQL no Dev Tools Suite. Use o SQL Formatter interativo acima enquanto lê, ou salte para uma secção abaixo. Toda a análise e formatação corre no navegador via sql-formatter — consultas, nomes de esquema e dados de amostra nunca são carregados.
O que o SQL Formatter faz
O SQL Formatter embeleza SQL multilinha para humanos e minifica SQL para transporte. Coloca palavras-chave em maiúsculas automaticamente (SELECT, FROM, WHERE), aplica indentação por cláusula e respeita gramática específica do dialecto da biblioteca sql-formatter — o mesmo motor usado por muitas extensões IDE e formatadores CLI.
O que obtém
- Espaço de trabalho dual simétrico: consulta SQL à esquerda, saída formatada ou minificada à direita
- 13 analisadores de dialecto agrupados como Núcleo relacional, Armazéns cloud, Big data e Empresa
- Modos Beautify e Minify com autoformatação em direto (com debounce) e botão Process explícito
- Seletor de dialecto e caixa Strip comments no cabeçalho do painel — sem linha extra
- Saída formatada recolhível para árvores SELECT grandes (modo Beautify)
- Erros de parse com indicações de linha e coluna quando o analisador não consegue ler a entrada
- Partilha de URL opcional: ?mode=minify&dialect=postgresql persiste modo e dialecto
Use esta ferramenta quando
- Cola SQL ad hoc de um log, ferramenta BI ou ORM e precisa de indentação legível antes da revisão
- Incorpora SQL em código de aplicação e quer uma string minificada numa linha
- Trabalha com PostgreSQL, Snowflake, BigQuery, Spark ou Oracle e precisa que o analisador reconheça palavras-chave do dialecto
- Quer remover comentários de bloco e linha antes de commit ou envio
Não espere
- Validação semântica — sucesso na formatação não significa execução no servidor
- Planeamento automático de consultas, lint de desempenho ou reescritas conscientes do esquema
- Preservação perfeita de cada extensão exótica não coberta pelo dialecto selecionado
- EXPLAIN ou execução no servidor — é apenas ferramenta de layout e espaços em branco
Layout do espaço de trabalho e controlos do cabeçalho
Os controlos ficam no cabeçalho do painel SQL QUERY para os editores de entrada e saída manterem a mesma altura. Não há linha de opções separada abaixo da barra de ferramentas.
Controlos do cabeçalho (painel esquerdo)
| Controlo | Localização | Função |
|---|---|---|
| Dialect dropdown | Cabeçalho, à esquerda dos separadores de modo | Seleciona o analisador sql-formatter (agrupado Núcleo, Cloud, Big data, Empresa) |
| Strip comments | Caixa no cabeçalho | Se marcado, remove --, /* */ e comentários específicos do dialecto antes de Beautify ou Minify |
| Beautify / Minify | Separadores de modo no cabeçalho | Beautify aplica indentação e maiúsculas; Minify colapsa espaços |
| Process | Botão principal no cabeçalho | Reexecuta formatação de imediato (também Ctrl/Cmd+Enter). Autoformatação após ~350 ms quando entrada ou opções mudam |
| Swap | Divisor central | Move saída para entrada e reprocessa com o modo atual |
Atalhos de teclado
- Ctrl/Cmd+Enter — Process
- Ctrl/Cmd+L — Limpar espaço de trabalho
Dialectos SQL suportados (13 analisadores)
Escolha sempre o dialecto que corresponde ao ambiente de execução. O analisador usa listas de palavras-chave, nomes de funções e regras de comentários distintas por dialecto. Standard SQL é um padrão seguro para fragmentos ANSI genéricos.
Dialectos suportados
| Grupo | Dialecto | sql-formatter id | Uso típico |
|---|---|---|---|
| Núcleo | Standard SQL | sql | Consultas ANSI genéricas |
| Núcleo | PostgreSQL | postgresql | Postgres, Supabase, Cockroach (aprox.) |
| Núcleo | T-SQL / SQL Server | transactsql | Microsoft SQL Server, Azure SQL |
| Núcleo | MySQL / MariaDB | mysql | MySQL, MariaDB (comentários #) |
| Núcleo | SQLite | sqlite | SQLite, BD móveis/locais |
| Cloud | Snowflake | snowflake | Folhas Snowflake, dbt no Snowflake |
| Cloud | Google BigQuery | bigquery | Consola BigQuery, consultas agendadas |
| Cloud | Amazon Redshift | redshift | Redshift, SQL de armazém compatível com Postgres |
| Big data | Spark SQL | spark | Databricks, notebooks Spark SQL |
| Big data | Trino / Presto | trino | Trino, Presto, motores de consulta federada |
| Big data | Apache Hive | hive | HiveQL, stacks Hadoop legados |
| Empresa | Oracle PL/SQL | plsql | Procedimentos Oracle Database e scripts SQL*Plus |
| Empresa | IBM DB2 | db2 | Db2 LUW e armazéns empresariais |
Cassandra CQL não é suportado — não faz parte do conjunto de dialectos sql-formatter. Use um formatador CQL específico para Cassandra.
Beautify vs Minify — qual modo usar
Beautify e Minify partilham o mesmo seletor de dialecto e caixa Strip comments mas produzem formas de saída diferentes.
Comparação de modos
| Beautify | Minify | |
|---|---|---|
| Forma de saída | Multilinha, indentada | Uma linha (espaços colapsados) |
| Palavras-chave | Maiúsculas (SELECT, FROM, …) | Capitalização original exceto remoção de comentários |
| Comentários (Strip off) | Removidos antes do formato | Apenas espaços colapsados |
| Comentários (Strip on) | Removidos | Removidos |
| Ideal para | Docs, migrações, revisão de código | Strings incorporadas, logs, tamanho de payload |
| Vista de saída | Árvore recolhível para consultas grandes | Saída de texto simples |
Exemplo
Entrada: select id, name from users where active = 1 — Beautify produz linhas indentadas com SELECT / FROM / WHERE em maiúsculas. Minify com Strip desligado produz uma linha: select id, name from users where active = 1.
Passo a passo: formatar SQL no navegador
- Abra SQL Formatter na barra lateral em Formatters.
- Cole SQL no editor esquerdo, carregue um ficheiro .sql da barra de sessão ou arraste um ficheiro para o estado vazio.
- Escolha o dialecto da sua base de dados (ex. snowflake para consulta Snowflake).
- Opcionalmente marque Strip comments se a entrada tiver anotações -- ou /* */ indesejadas.
- Selecione Beautify para SQL legível ou Minify para linha compacta.
- Revise a saída à direita. Corrija qualquer banner de erro de parse — clique para fechar após editar.
- Copie, descarregue ou troque saída de volta para entrada para outra passagem.
- Partilhe link com ?dialect=bigquery&mode=minify para colaboradores abrirem as mesmas definições.
Caso de uso: ficheiros de migração e ORMs
Ficheiros de migração Flyway, Liquibase e ORM são mais fáceis de rever quando listas SELECT, blocos JOIN e cláusulas WHERE quebram em linhas consistentes.
Fluxo de trabalho
- Defina dialecto para postgresql, transactsql, mysql ou sqlite conforme o alvo de migração.
- Cole SQL de migração bruto de diff gerado ou saída ORM.
- Beautify com Strip desligado se comentários inline documentam intenção.
- Copie SQL formatado de volta ao ficheiro de migração antes de abrir o PR.
Dica
A formatação não valida contra o esquema em vivo. Execute migrações numa base de staging após alterações cosméticas.
Caso de uso: Snowflake, BigQuery e Spark SQL
Engenheiros de analytics copiam frequentemente SQL de consolas Snowflake, BigQuery ou Redshift com capitalização inconsistente e linhas colapsadas.
Snowflake / BigQuery / Redshift
- Selecione snowflake, bigquery ou redshift antes de Beautify para funções de armazém parsearem corretamente.
- Use Strip comments ao exportar de notebook com notas de sessão --.
- Para listas SELECT muito largas, use controlos de dobra (Expand all / Collapse all) após Beautify.
Spark / Trino / Hive
- Escolha spark para notebooks Databricks e pipelines Spark SQL.
- Escolha trino para consultas federadas compatíveis com Presto entre catálogos.
- Escolha hive para scripts HiveQL legados — cobertura segue regras Hive do sql-formatter.
Caso de uso: minificar SQL para strings incorporadas
Código de aplicação guarda SQL frequentemente como string modelo. Minify reduz bytes e escapes para uma linha em JavaScript, Python ou Go.
- Cole a versão legível do SQL no painel de entrada.
- Ative Strip comments se desenvolvedores deixaram notas de depuração na consulta.
- Mude para modo Minify.
- Copie saída de uma linha para o literal de string (atenção ao escape de aspas).
Se precisar de SQL legível no código-fonte mas compacto em runtime, guarde versão embelezada em docs e minifique só o artefacto de build.
Caso de uso: limpeza em PR e revisão de código
Normalize SQL antes da revisão para diffs focarem lógica, não ruído de espaços.
- Embeleze ambos os lados de comparação quando colega cola SQL numa linha num ticket.
- Use palavras-chave em maiúsculas como estilo consistente — o formatador aplica automaticamente em Beautify.
- Encaminhe saída para Text Diff após formatar duas versões se precisar de diff semântico do texto da consulta.
Strip comments — comportamento por dialecto
A caixa Strip comments aplica-se a Beautify e Minify. Quando ativa, a ferramenta remove comentários antes da formatação com regras conscientes do dialecto onde implementadas.
Comportamento ao remover comentários
| Sintaxe | Tratado com Strip ligado |
|---|---|
| Comentários de linha -- | Sim (substituídos por espaço, depois espaços normalizados) |
| Comentários de bloco /* */ | Sim |
| Comentários # MySQL | Sim quando dialecto é mysql |
| Aspas dollar $$ PostgreSQL | Preservadas — conteúdo em $$…$$ não é tratado como comentário |
| Aspas dollar Redshift | Mesma preservação que dialecto PostgreSQL |
Quando Strip está desligado (Minify)
Minify ainda colapsa espaços numa linha mas mantém texto de comentários. Use quando comentários devem ir com a consulta.
Correção: erros de parse e indicações de linha
Quando o analisador falha, um banner vermelho mostra Parse error com números de linha e coluna. O editor de entrada destaca a linha de erro quando disponível.
Correções comuns
- Dialecto errado — mude para o motor que realmente usa (ex. plsql para pacotes Oracle, não Standard SQL).
- String ou parêntese não fechado — equilibre aspas e parênteses perto da linha indicada.
- Vírgula final ou cláusula incompleta — termine listas SELECT e CTEs antes de formatar.
- Conteúdo não-SQL colado — remova envoltórios shell ou JSON em volta da consulta.
- Sintaxe específica do dialecto em modo genérico — tente dialecto do fornecedor ou simplifique extensões não suportadas.
Se consulta válida ainda falhar, o analisador sql-formatter pode não cobrir essa variante. Reporte upstream ou formate subconjunto simplificado manualmente.
Privacidade — consultas permanecem no navegador
SQL Formatter corre 100 % no navegador. A biblioteca sql-formatter é carregada dinamicamente; formatação executa na thread principal em JavaScript.
- Nenhum texto de consulta é enviado para servidores Dev Tools Suite
- Entrada, saída, dialecto e preferência Strip comments podem persistir em localStorage no dispositivo
- Parâmetros de URL (?dialect=, ?mode=) só refletem definições — não contêm corpo SQL
- Limpe espaço de trabalho (Ctrl/Cmd+L) após trabalhar com dados de produção ou PII
Boas práticas de formatação SQL
- Faça coincidir dialecto com ambiente de execução antes de Beautify — sucesso na formatação ≠ sucesso em runtime
- Beautify para humanos, Minify para máquinas
- Mantenha Strip desligado quando comentários documentam regras de negócio; ligue para exportações e strings incorporadas
- Verifique saída minificada em base de staging com aspas dollar ou literais exóticos
- Use histórico de sessão e upload de ficheiro para scripts grandes em vez de colar em apps de chat que alteram aspas
- Combine com Text Diff ao comparar duas versões formatadas da mesma consulta de relatório
Perguntas frequentes
Respostas para problemas comuns e questões de privacidade de dados.
Ferramentas relacionadas
Explore outros utilitários relacionados que complementam esta ferramenta.
Documentação oficial e referências
Especificações e documentação da plataforma para esta utilidade.