# Formater Spark SQL

Formatuj zapytania Apache Spark SQL i Databricks zgodnie z regułami Spark dotyczącymi identyfikatorów w backtickach, ciągów ze sekwencjami ucieczki backslash, surowych ciągów r'' i podstawień ${var}. CLUSTER BY, DISTRIBUTE BY i SORT BY są zachowywane jako klauzule, LATERAL VIEW oraz LEFT SEMI lub ANTI JOIN rozpoczynają nowe wiersze, a SELECT * EXCEPT pozostaje w jednym wierszu. Niedomknięte ciągi znaków i nawiasy są zgłaszane wraz z numerem wiersza i kolumny, co pomaga inżynierom danych.

## Najczęściej zadawane pytania

### Jakie składnie Spark SQL są rozpoznawane?

Rozpoznawane są identyfikatory w backtickach, ciągi w apostrofach i cudzysłowach podwójnych z sekwencjami ucieczki backslash, surowe ciągi r'' oraz literały binarne X''. Podstawienia ${var}, indeksowanie map['key'] i array[0] oraz rzutowania :: są zachowywane w całości.

### Które klauzule specyficzne dla Spark są obsługiwane?

CLUSTER BY, DISTRIBUTE BY i SORT BY otrzymują własne wiersze, podobnie jak ORDER BY. LATERAL VIEW, LATERAL VIEW OUTER, LEFT SEMI JOIN i LEFT ANTI JOIN rozpoczynają nowe wiersze, tak jak złączenia.

### A co z SELECT * EXCEPT?

EXCEPT bezpośrednio po gwiazdce pozostaje w tym samym wierszu. Dzięki temu SELECT * EXCEPT (col) nie jest mylone z operatorem zbiorów EXCEPT.

### Czy symbole zastępcze ${var} są zachowywane?

Tak. Podstawienia takie jak ${env} lub ${hivevar:date} są zachowywane dokładnie w takiej postaci, w jakiej je zapisano, łącznie ze znajdującym się w nich dwukropkiem.

### Czy obsługuje MERGE INTO?

Tak. Gałęzie WHEN MATCHED i WHEN NOT MATCHED instrukcji Delta Lake MERGE INTO rozpoczynają nowe wiersze.

### Czy mogę wkleić SQL z ciągu znaków PySpark?

Tak, wklej sam tekst SQL bez otaczających go cudzysłowów Pythona. Wynik możesz wkleić z powrotem do spark.sql() lub komórki notatnika.

### Czy zmienia wielkość liter w słowach kluczowych?

Nie. Słowa kluczowe i nazwy zachowują użyte przez Ciebie wielkość liter. Zmieniają się tylko białe znaki i podziały wierszy.

### Jakie błędy są wykrywane?

Niezamknięte ciągi znaków, identyfikatory w backtickach, indeksy i komentarze blokowe oraz niezbilansowane nawiasy — każde z numerem wiersza i kolumny. Nic nie jest uruchamiane w klastrze.

### Jak duże mogą być dane wejściowe?

Do 1 MB na żądanie i 128 KB na instrukcję. Eksporty notatników zawierające wiele instrukcji są formatowane po jednej instrukcji naraz.

### Czy mogę wybrać wcięcia i czy mój skrypt SQL jest zapisywany?

Użyj 2 lub 4 spacji albo tabulatorów. SQL jest formatowane wyłącznie w pamięci i nigdy nie jest zapisywane.

Twoja reklama tutaj?

[Napisz do nas](mailto:hi@dennn.is?subject=Reklama%20w%20OneClick%20Pro)

[Reklama Pakiet wtyczek gotowy do pracy z agentami dla WordPress.](https://sleekwp.com/?ref=oneclickpro)
