Formatador de BigQuery
Formate Google BigQuery Standard SQL com regras do BigQuery para nomes entre crases project.dataset.table, strings entre aspas triplas e strings brutas, comentários # e parâmetros @query. QUALIFY fica em uma linha própria, SELECT * EXCEPT e REPLACE permanecem na mesma linha, e cláusulas de janela são indentadas. Strings, comentários e parênteses não fechados são indicados com linha e coluna, o que ajuda analistas e engenheiros de dados a revisar consultas.
Perguntas frequentes
Qual sintaxe do BigQuery é reconhecida?
Nomes entre crases, como `project.dataset.table`, strings entre aspas simples e duplas com escapes de barra invertida, strings entre aspas triplas e prefixos de strings brutas r'' e de bytes b'' são reconhecidos. Parâmetros @named e variáveis @@system são mantidos como foram escritos.
O formatador mantém comentários com cerquilha (#)?
Sim. O BigQuery aceita comentários #, além de comentários -- e /* */, e os três são mantidos no lugar.
Como QUALIFY é tratado?
QUALIFY começa em sua própria linha, como WHERE e HAVING. A condição de filtro é indentada abaixo dela.
E quanto a SELECT * EXCEPT e REPLACE?
Quando EXCEPT ou REPLACE vem depois de um asterisco, permanece na mesma linha que ele. Assim, SELECT * EXCEPT (col) não é confundido com a operação de conjunto EXCEPT.
Arrays e structs são mantidos intactos?
Sim. Índices de arrays, como arr[OFFSET(0)], são mantidos como foram escritos, e construtores STRUCT e ARRAY são formatados como outras chamadas de função.
Como as funções de janela são organizadas?
Cláusulas OVER longas abrem um bloco indentado com PARTITION BY e ORDER BY em linhas próprias. As curtas permanecem na mesma linha.
A ferramenta altera maiúsculas e minúsculas das palavras-chave?
Não. Palavras-chave, funções e nomes mantêm a capitalização que você usou. Apenas os espaços em branco e as quebras de linha mudam.
Quais erros são detectados?
Strings sem fechamento, strings entre aspas triplas, nomes entre crases e comentários de bloco, além de parênteses desequilibrados, cada um com linha e coluna. A consulta não é enviada ao BigQuery e não custa nada.
Qual pode ser o tamanho da entrada?
Até 1 MB por solicitação e 128 KB por instrução. Scripts com muitas instruções são formatados uma instrução por vez.
Posso escolher a indentação? Minha consulta fica armazenada?
Use 2 ou 4 espaços ou tabulações. A consulta é formatada apenas na memória e nunca é salva.