Formatter BigQuery
Formatuj Google BigQuery Standard SQL zgodnie z regułami BigQuery dotyczącymi nazw w project.dataset.table, ciągów w potrójnych cudzysłowach i ciągów surowych, komentarzy # oraz parametrów @query. QUALIFY otrzymuje osobny wiersz, SELECT * EXCEPT i REPLACE pozostają w tym samym wierszu, a klauzule okien są wcięte. Niezamknięte ciągi, komentarze i nawiasy są zgłaszane wraz z numerem wiersza i kolumny, co pomaga analitykom i inżynierom danych przeglądać zapytania.
Najczęściej zadawane pytania
Jakie elementy składni BigQuery są rozpoznawane?
Rozpoznawane są nazwy w cudzysłowach odwrotnych, takie jak `project.dataset.table`, ciągi w pojedynczych i podwójnych cudzysłowach z sekwencjami ucieczki z ukośnikiem odwrotnym, ciągi w potrójnych cudzysłowach oraz przedrostki surowych r'' i bajtowych b''. Parametry @named i zmienne @@system pozostają w zapisanej postaci.
Czy formatter zachowuje komentarze hash (#)?
Tak. BigQuery obsługuje komentarze #, a także komentarze -- i /* */; wszystkie trzy pozostają na miejscu.
Jak obsługiwane jest QUALIFY?
QUALIFY rozpoczyna osobny wiersz, podobnie jak WHERE i HAVING. Warunek filtrowania jest wcięty poniżej.
Co z SELECT * EXCEPT i REPLACE?
Gdy EXCEPT lub REPLACE występuje po gwiazdce, pozostaje w tym samym wierszu co gwiazdka. Dzięki temu SELECT * EXCEPT (col) nie zostaje pomylone z operacją zbiorów EXCEPT.
Czy tablice i struktury pozostają bez zmian?
Tak. Indeksy tablic, takie jak arr[OFFSET(0)], pozostają w zapisanej postaci, a konstruktory STRUCT i ARRAY są formatowane jak inne wywołania funkcji.
Jak rozmieszczane są funkcje okienkowe?
Długie klauzule OVER otwierają wcięty blok, w którym PARTITION BY i ORDER BY znajdują się w osobnych wierszach. Krótkie pozostają w tym samym wierszu.
Czy zmienia wielkość liter w słowach kluczowych?
Nie. Słowa kluczowe, funkcje i nazwy zachowują wpisaną wielkość liter. Zmieniają się tylko białe znaki i podziały wierszy.
Jakie błędy są wykrywane?
Wykrywa niedomknięte ciągi znaków, ciągi w potrójnych cudzysłowach, nazwy w backtickach i komentarze blokowe oraz niezbilansowane nawiasy, podając w każdym przypadku wiersz i kolumnę. Zapytanie nie jest wysyłane do BigQuery i nic nie kosztuje.
Jak duże mogą być dane wejściowe?
Do 1 MB na żądanie i 128 KB na instrukcję. Skrypty z wieloma instrukcjami są formatowane po jednej instrukcji naraz.
Czy mogę wybrać wcięcie i czy moje zapytanie jest zapisywane?
Użyj 2 lub 4 spacji albo tabulatorów. Zapytanie jest formatowane wyłącznie w pamięci i nigdy nie jest zapisywane.