Formatador de SQL

Formate códigos SQL e entenda o que cada cláusula faz em linguagem simples.

Entrada SQL

Recuo
Palavras-chave
query.sql
Visualização
Cole uma consulta para formatá-la ou explicá-la.

Seu SQL é formatado e analisado diretamente no seu navegador. Nada é enviado para o BroBroGo.

FAQ

Quais dialetos SQL a ferramenta consegue formatar?

SQL Padrão, PostgreSQL, MySQL, MariaDB, SQL Server (T-SQL), Oracle (PL/SQL), SQLite, BigQuery, Snowflake e Spark SQL. Escolha o dialeto correspondente ao seu banco de dados para que as palavras-chave e as aspas sejam tratadas conforme esperado pelo respectivo motor.

Como funciona a explicação em linguagem simples?

A ferramenta lê a estrutura da consulta — o tipo de instrução e cada cláusula como SELECT, FROM, JOIN, WHERE, GROUP BY e ORDER BY — e explica o que cada uma faz. Ela descreve a estrutura lógica da consulta, e não um plano de execução do banco de dados, por isso funciona mesmo com SQL parcial ou específico de um fornecedor.

É seguro colar consultas de ambientes de produção?

Sim. A formatação e a análise são executadas inteiramente no seu navegador — seu código SQL nunca sai da página.

A importância da legibilidade no código SQL

O código SQL é a linguagem universal para manipulação e consulta de dados, mas a ausência de formatação padronizada pode transformar consultas complexas em blocos de texto difíceis de ler e manter. Linhas excessivamente longas, falta de recuo e inconsistência no uso de maiúsculas e minúsculas dificultam a identificação de erros de lógica e atrasam o trabalho de depuração.

A formatação adequada melhora a colaboração entre desenvolvedores, analistas de dados, administradores de banco de dados (DBAs) e pessoal de suporte. Quando o código segue regras claras de estrutura, a leitura flui de maneira natural, permitindo que qualquer membro da equipe compreenda a intenção da consulta rapidamente.

Configurações de formatação e dialetos suportados

Para garantir que o código seja formatado de acordo com as especificidades de cada motor de banco de dados, a ferramenta oferece suporte a dez dialetos SQL diferentes:

  • SQL Padrão
  • PostgreSQL
  • MySQL
  • MariaDB
  • SQL Server (T-SQL)
  • Oracle (PL/SQL)
  • SQLite
  • BigQuery
  • Snowflake
  • Spark SQL

Além da seleção do dialeto, é possível personalizar o estilo de saída por meio de parâmetros de recuo e caixa das palavras-chave:

  • Recuo: Define o espaçamento lateral das linhas, com opções de 2 espaços, 4 espaços ou tabulação (tab).
  • Palavras-chave: Ajusta a caixa das palavras reservadas do SQL para MAIÚSCULAS (maiúsculas), minúsculas (minúsculas) ou Manter (manter a caixa original do texto inserido).

O limite máximo de processamento para o código de entrada é de 300.000 caracteres. Caso o texto inserido ultrapasse esse limite, a ferramenta exibe a mensagem de erro "Esta consulta é grande demais para ser processada. Tente uma menor.". Se o código SQL contiver erros de sintaxe que impeçam a análise, o sistema exibirá o aviso "Não foi possível formatar este SQL — verifique a sintaxe.". Quando ocorre um erro, o resultado gerado anteriormente não é substituído pela mensagem de erro na tela. Ao acionar o botão "Limpar", a ferramenta esvazia as áreas de entrada e saída, oculta os detalhes de eventuais erros e exibe a mensagem "Limpo.".

Métricas de saída do código formatado

Após o processamento instantâneo no navegador, a ferramenta exibe o código estruturado acompanhado de metadados que ajudam a mensurar o tamanho do script:

  • Linhas: O número total de linhas geradas no SQL formatado.
  • Caracteres: A contagem exata de caracteres presentes no resultado.
  • Tamanho: O tamanho físico ocupado pelo código formatado.

Análise estrutural e explicação de cláusulas

Além de organizar visualmente o código, a ferramenta possui uma funcionalidade que gera uma explicação detalhada, cláusula por cláusula, sobre o funcionamento lógico da consulta. Essa análise difere de um plano de execução de banco de dados porque foca estritamente na estrutura lógica e sintática da instrução, e não em como o motor do banco de dados otimizará ou executará a busca fisicamente. Por esse motivo, a explicação funciona mesmo em trechos de SQL parciais ou específicos de determinados fornecedores.

Se a consulta contiver várias instruções, a ferramenta exibe o status no formato "{count} instrução(ões) explicada(s).". Cada instrução individual é identificada pelo rótulo "Instrução {n}". Caso o código enviado possua mais de 25 instruções, a análise será limitada às primeiras 25, exibindo o aviso "Apenas as primeiras 25 instruções são exibidas.".

Tipos de instruções identificados (Kind)

A ferramenta categoriza a ação principal de cada instrução sob a propriedade "Kind", mapeando-a para uma das seguintes definições:

  • SELECT: Uma consulta que lê e retorna linhas sem alterar nenhum dado.
  • INSERT: Adiciona novas linhas a uma tabela.
  • UPDATE: Altera valores em linhas que já existem.
  • DELETE: Remove linhas de uma tabela.
  • CREATE: Define um novo objeto, como uma tabela, visualização (view) ou índice.
  • ALTER: Altera a definição de um objeto existente.
  • DROP: Remove permanentemente um objeto do banco de dados.
  • TRUNCATE: Esvazia uma tabela, excluindo todas as linhas.
  • WITH: Cria um resultado temporário nomeado (CTE) para a consulta que vem a seguir.
  • MERGE: Insere, atualiza ou exclui linhas em uma única operação combinada.
  • OTHER: Uma instrução SQL.

Papel de cada cláusula (Role)

Para cada componente interno da instrução, a ferramenta detalha a função desempenhada ("Role"):

Cláusula / Contexto Descrição do Papel (Role)
SELECT As colunas e expressões retornadas.
SELECT DISTINCT As colunas retornadas, removendo linhas duplicadas.
FROM A tabela (or subconsulta) de onde os dados são lidos.
JOIN Combina cada linha com as linhas correspondentes de outra tabela.
WHERE Mantém apenas as linhas que atendem a esta condição.
GROUP BY Agrupa as linhas para que funções agregadas como COUNT ou SUM possam ser calculadas por grupo.
HAVING Filtra os grupos após o cálculo das funções agregadas.
ORDER BY Ordena as linhas resultantes.
LIMIT Limita a quantidade de linhas retornadas.
OFFSET Ignora um número específico de linhas antes de começar a retornar os resultados.
UNION Combina estes resultados com os de outra consulta.
VALUES Os valores das linhas que estão sendo inseridas.
INTO A tabela que recebe as novas linhas.
SET Os novos valores de coluna a serem atribuídos.
UPDATE A tabela cujas linhas serão alteradas.
DELETE FROM A tabela de onde as linhas serão removidas.
WITH Define um conjunto de resultados temporário nomeado usado a seguir.
STATEMENT A instrução, exibida como está.

Processamento local e privacidade dos dados

O funcionamento do formatador ocorre inteiramente do lado do cliente (client-side). Isso significa que todo o processamento de formatação, contagem de caracteres e geração de explicações é realizado diretamente no navegador do usuário.

Nenhum dado ou trecho de código SQL digitado ou colado na ferramenta é enviado para servidores externos ou para o BroBroGo. O código permanece restrito ao ambiente local do navegador durante todo o uso. Adicionalmente, a ferramenta armazena os rascunhos de trabalho e as preferências de tema (como a escolha do editor escuro) localmente no navegador do usuário para facilitar acessos futuros.

Perguntas Frequentes (FAQ)

Quais dialetos SQL a ferramenta consegue formatar?
SQL Padrão, PostgreSQL, MySQL, MariaDB, SQL Server (T-SQL), Oracle (PL/SQL), SQLite, BigQuery, Snowflake e Spark SQL. Escolha o dialeto correspondente ao seu banco de dados para que as palavras-chave e as aspas sejam tratadas conforme esperado pelo respectivo motor.

Como funciona a explicação em linguagem simples?
A ferramenta lê a estrutura da consulta — o tipo de instrução e cada cláusula como SELECT, FROM, JOIN, WHERE, GROUP BY e ORDER BY — e explica o que cada uma faz. Ela descreve a estrutura lógica da consulta, e não um plano de execução do banco de dados, por isso funciona mesmo com SQL parcial ou específico de um fornecedor.

É seguro colar consultas de ambientes de produção?
Sim. A formatação e a análise são executadas inteiramente no seu navegador — seu código SQL nunca sai da página.

Existe um limite de tamanho para o SQL que desejo formatar?
Sim, o limite máximo suportado pela ferramenta é de 300.000 caracteres por consulta. Se o seu código exceder esse volume, a ferramenta exibirá um aviso solicitando o envio de uma consulta menor.