BigQuery-opmaker
Formatteer Google BigQuery Standard SQL volgens de BigQuery-regels voor namen tussen backticks, project.dataset.table, strings tussen drie aanhalingstekens en raw strings, #-commentaar en @query-parameters. QUALIFY krijgt een eigen regel, SELECT * EXCEPT en REPLACE blijven inline en windowclausules krijgen inspringing. Niet-afgesloten strings, commentaar en haakjes worden met regel- en kolomnummer gemeld, zodat analisten en data-engineers query's kunnen beoordelen.
Veelgestelde vragen
Welke BigQuery-syntaxis wordt herkend?
Namen tussen backticks, zoals `project.dataset.table`, strings tussen enkele en dubbele aanhalingstekens met backslash-escapes, strings tussen drie aanhalingstekens en raw r''- en bytes b''-prefixen worden herkend. @named-parameters en @@system-variabelen blijven zoals ze zijn geschreven.
Behoudt de formatter hashcommentaar (#)?
Ja. BigQuery ondersteunt #-commentaar naast --- en /* */-commentaar; alle drie blijven staan.
Hoe wordt QUALIFY verwerkt?
QUALIFY begint, net als WHERE en HAVING, op een eigen regel. De filtervoorwaarde krijgt inspringing eronder.
Hoe zit het met SELECT * EXCEPT en REPLACE?
Als EXCEPT of REPLACE op een ster volgt, blijft het op dezelfde regel als de ster staan. Zo wordt SELECT * EXCEPT (col) niet aangezien voor de EXCEPT-setbewerking.
Blijven arrays en structs intact?
Ja. Array-indexen zoals arr[OFFSET(0)] blijven zoals ze zijn geschreven, en STRUCT- en ARRAY-constructors worden opgemaakt zoals andere functieaanroepen.
Hoe worden windowfuncties opgemaakt?
Lange OVER-clausules openen een ingesprongen blok, met PARTITION BY en ORDER BY op eigen regels. Korte clausules blijven inline.
Verandert de hoofdlettergebruik van trefwoorden?
Nee. Trefwoorden, functies en namen behouden de schrijfwijze die je hebt ingevoerd. Alleen witruimte en regeleinden veranderen.
Welke fouten worden gedetecteerd?
Niet-afgesloten strings, strings tussen drie aanhalingstekens, namen tussen backticks en blokcommentaar, en niet-sluitende haakjes, elk met regel- en kolomnummer. De query wordt niet naar BigQuery verstuurd en kost niets.
Hoe groot mag de invoer zijn?
Maximaal 1 MB per aanvraag en 128 KB per statement. Scripts met veel statements worden statement voor statement opgemaakt.
Kan ik de inspringing kiezen en wordt mijn query opgeslagen?
Gebruik 2 of 4 spaties of tabs. De query wordt alleen in het geheugen opgemaakt en nooit opgeslagen.