# Spark SQL Formatter

Formatera Apache Spark SQL och Databricks-frågor enligt Sparks regler för backtick-identifierare, strängar med omvänt snedstreck som escape-tecken, råa r''-strängar och ${var}-substitutioner. CLUSTER BY, DISTRIBUTE BY och SORT BY behålls som satser, LATERAL VIEW och LEFT SEMI eller ANTI JOIN börjar på nya rader, och SELECT * EXCEPT hålls på samma rad. Oavslutade strängar och parenteser rapporteras med rad och kolumn för dataingenjörer.

## Vanliga frågor

### Vilken Spark SQL-syntax tolkas?

Backtick-identifierare, enkel- och dubbelciterade strängar med omvänt snedstreck som escape-tecken, råa r''-strängar och X''-binärlitteraler känns igen. ${var}-substitutioner, map['key']- och array[0]-indexering samt ::-typkonverteringar bevaras intakta.

### Vilka Spark-specifika satser stöds?

CLUSTER BY, DISTRIBUTE BY och SORT BY får egna rader, precis som ORDER BY. LATERAL VIEW, LATERAL VIEW OUTER, LEFT SEMI JOIN och LEFT ANTI JOIN börjar på nya rader, precis som join-uttryck.

### Hur hanteras SELECT * EXCEPT?

EXCEPT direkt efter en stjärna ligger kvar på samma rad. Därmed förväxlas inte SELECT * EXCEPT (col) med mängdoperatorn EXCEPT.

### Bevaras ${var}-platshållare?

Ja. Substitutioner som ${env} eller ${hivevar:date} bevaras exakt som de är skrivna, inklusive kolon inuti dem.

### Stöds MERGE INTO?

Ja. WHEN MATCHED- och WHEN NOT MATCHED-grenar i Delta Lake MERGE INTO-satser börjar på nya rader.

### Kan jag klistra in SQL från en PySpark-sträng?

Ja, klistra in själva SQL-texten utan de omgivande Python-citattecknen. Resultatet kan klistras tillbaka i spark.sql() eller i en notebookcell.

### Ändras versaler och gemener i nyckelord?

Nej. Nyckelord och namn behåller den skiftlägesform du skrev. Endast blanksteg och radbrytningar ändras.

### Vilka fel upptäcks?

Oavslutade strängar, backtick-identifierare, subskript och blockkommentarer samt obalanserade parenteser, alla med rad- och kolumnangivelse. Ingenting körs i ett kluster.

### Hur stor kan indata vara?

Upp till 1 MB per förfrågan och 128 KB per sats. Notebook-exporter med många satser formateras en sats i taget.

### Kan jag välja indentering, och lagras mitt SQL?

Använd 2 eller 4 mellanslag eller tabbar. SQL formateras endast i minnet och sparas aldrig.

Vill du annonsera här?

[Mejla oss](mailto:hi@dennn.is?subject=Annonsera%20p%C3%A5%20OneClick%20Pro)

[Annons Pluginpaketet för agenter för WordPress.](https://sleekwp.com/?ref=oneclickpro)
