Formattatore BigQuery
Formatta Google BigQuery Standard SQL secondo le regole BigQuery per i nomi tra backtick project.dataset.table, le stringhe tra virgolette triple e raw, i commenti # e i parametri @query. QUALIFY viene messo su una riga separata, SELECT * EXCEPT e REPLACE restano sulla stessa riga e le clausole window vengono indentate. Le stringhe, i commenti e le parentesi non chiusi vengono segnalati con riga e colonna, aiutando analisti e data engineer a esaminare le query.
Domande frequenti
Quale sintassi BigQuery viene riconosciuta?
Vengono riconosciuti i nomi tra backtick come `project.dataset.table`, le stringhe tra virgolette singole e doppie con escape con barra rovesciata, le stringhe tra virgolette triple e i prefissi raw r'' e bytes b''. I parametri @named e le variabili @@system restano come sono stati scritti.
Il formattatore mantiene i commenti con cancelletto (#)?
Sì. BigQuery accetta i commenti #, oltre a quelli -- e /* */, e tutti e tre restano al loro posto.
Come viene gestito QUALIFY?
QUALIFY inizia su una riga separata, come WHERE e HAVING. La condizione di filtro viene indentata sotto la clausola.
E SELECT * EXCEPT e REPLACE?
Quando EXCEPT o REPLACE segue un asterisco, resta sulla stessa riga dell'asterisco. In questo modo SELECT * EXCEPT (col) non viene confuso con l'operazione di insieme EXCEPT.
Gli array e le struct restano intatti?
Sì. Gli indici degli array come arr[OFFSET(0)] restano come sono stati scritti, mentre i costruttori STRUCT e ARRAY vengono formattati come le altre chiamate di funzione.
Come vengono disposte le funzioni window?
Le clausole OVER lunghe aprono un blocco indentato, con PARTITION BY e ORDER BY su righe separate. Quelle brevi restano sulla stessa riga.
Modifica le maiuscole delle parole chiave?
No. Le parole chiave, le funzioni e i nomi mantengono le maiuscole e le minuscole originali. Cambiano solo gli spazi e le interruzioni di riga.
Quali errori vengono rilevati?
Stringhe non chiuse, stringhe tra triple virgolette, nomi tra backtick e commenti di blocco, oltre a parentesi non bilanciate, ciascuno con riga e colonna. La query non viene inviata a BigQuery e non comporta costi.
Qual è la dimensione massima dell'input?
Fino a 1 MB per richiesta e 128 KB per istruzione. Gli script con molte istruzioni vengono formattati un’istruzione alla volta.
Posso scegliere il rientro? La query viene salvata?
Usate 2 o 4 spazi oppure tabulazioni. La query viene formattata solo in memoria e non viene mai salvata.