Formateador de BigQuery
Formatea Google BigQuery Standard SQL con reglas de BigQuery para nombres entre comillas invertidas project.dataset.table, cadenas entre comillas triples y cadenas sin procesar, comentarios # y parámetros @query. QUALIFY va en su propia línea; SELECT * EXCEPT y REPLACE se mantienen en línea, y las cláusulas de ventana llevan sangría. Las cadenas, los comentarios y los paréntesis sin cerrar se indican con la línea y la columna, lo que ayuda a analistas e ingenieros de datos a revisar consultas.
Preguntas frecuentes
¿Qué sintaxis de BigQuery se entiende?
Se reconocen los nombres entre comillas invertidas, como `project.dataset.table`, las cadenas entre comillas simples y dobles con escapes de barra invertida, las cadenas entre comillas triples y los prefijos de cadenas sin procesar r'' y bytes b''. Los parámetros @named y las variables @@system se conservan tal como están escritas.
¿El formateador conserva los comentarios con almohadilla (#)?
Sí. BigQuery admite comentarios #, además de los comentarios -- y /* */, y los tres se mantienen en su sitio.
¿Cómo se gestiona QUALIFY?
QUALIFY comienza en su propia línea, como WHERE y HAVING. La condición del filtro lleva sangría debajo.
¿Qué ocurre con SELECT * EXCEPT y REPLACE?
Cuando EXCEPT o REPLACE va después de un asterisco, se mantiene en la misma línea que este. Así, SELECT * EXCEPT (col) no se confunde con la operación de conjuntos EXCEPT.
¿Se conservan intactos los arrays y las estructuras?
Sí. Los subíndices de arrays, como arr[OFFSET(0)], se conservan tal como están escritos, y los constructores STRUCT y ARRAY se formatean como otras llamadas a funciones.
¿Cómo se presentan las funciones de ventana?
Las cláusulas OVER largas abren un bloque con sangría, con PARTITION BY y ORDER BY en sus propias líneas. Las cortas se mantienen en línea.
¿Cambia el uso de mayúsculas y minúsculas en las palabras clave?
No. Las palabras clave, las funciones y los nombres conservan las mayúsculas y minúsculas originales. Solo cambian los espacios en blanco y los saltos de línea.
¿Qué errores se detectan?
Cadenas sin cerrar, cadenas entre triples comillas, nombres entre acentos graves y comentarios de bloque, además de paréntesis desequilibrados, indicando la línea y la columna de cada caso. La consulta no se envía a BigQuery y no tiene ningún coste.
¿Qué tamaño puede tener la entrada?
Hasta 1 MB por solicitud y 128 KB por sentencia. Los scripts con muchas sentencias se formatean de una en una.
¿Puedo elegir la sangría y se guarda mi consulta?
Use 2 o 4 espacios, o tabuladores. La consulta solo se formatea en memoria y nunca se guarda.