Was das Tool macht
Der SQL-Formatierer macht aus einer langen, einzeiligen Abfrage eine lesbare, einheitlich eingerückte. Jede Klausel (SELECT, FROM, WHERE, GROUP BY, ORDER BY) beginnt in einer eigenen Zeile, ausgewählte Spalten und Bedingungen stehen jeweils in einer eigenen Zeile, Joins werden unter der Tabelle ausgerichtet, die sie verbinden, und Unterabfragen werden innerhalb ihrer Klammern eingerückt.
Formatiertes SQL lässt sich in Pull Requests leichter reviewen, leichter debuggen, wenn eine Abfrage die falschen Zeilen liefert, und besser in Dokumentation einfügen. Es hilft auch, wenn du eine Abfrage aus einem ORM-Log oder einer Fehlermeldung der Anwendung kopierst, wo alles in einer Zeile steht.
So benutzt du es
- Füge eine oder mehrere SQL-Anweisungen in das Feld Eingabe ein, zieh eine
.sql-Datei darauf oder klick auf Beispiel. - Wähl den Dialekt deiner Datenbank.
- Stell die Schlüsselwörter auf GROSSBUCHSTABEN, kleinbuchstaben oder lass sie wie eingegeben. Funktionsnamen wie
COUNTfolgen derselben Einstellung. - Wähl 2 Leerzeichen, 4 Leerzeichen oder Tabs für die Einrückung.
- Kopier das Ergebnis oder lade es als
.sql-Datei herunter. Tastenkürzel: Ctrl/Cmd+Enter formatiert, Ctrl/Cmd+Shift+C kopiert.
Mehrere durch Semikolons getrennte Anweisungen werden durch eine Leerzeile getrennt. Kommentare bleiben, wo sie sind.
Beispiel
select u.id, count(o.id) as orders from users u left join orders o on o.user_id = u.id group by u.id
wird zu
SELECT
u.id,
COUNT(o.id) AS orders
FROM
users u
LEFT JOIN orders o ON o.user_id = u.id
GROUP BY
u.id
Tipps
Großgeschriebene Schlüsselwörter heben Klauseln von Tabellen- und Spaltennamen ab – die verbreitetste Konvention in Teams. Schreibt dein Team SQL in Kleinbuchstaben, wähl kleinbuchstaben, und die ganze Abfrage passt dazu. Meldet der Formatierer ein unerwartetes Token, prüf, ob der Dialekt stimmt: Namen in Backticks sind zum Beispiel in MySQL gültig, aber nicht in Standard-SQL.
FAQ
› Wird mein SQL an einen Server geschickt?
Nein. Der Formatierer läuft in deinem Browser, sodass Abfragen, die Tabellennamen, Kundendaten oder Geschäftslogik verraten, auf deinem Gerät bleiben.
› Welche SQL-Dialekte werden unterstützt?
Standard-SQL, MySQL, MariaDB, PostgreSQL, SQLite, SQL Server (T-SQL), Oracle (PL/SQL), BigQuery, Snowflake, Redshift und Spark SQL. Der richtige Dialekt hilft bei dialektspezifischer Syntax wie Bezeichnern in Backticks, ::-Casts oder Namen in eckigen Klammern.
› Ändert das Formatieren, was die Abfrage tut?
Nein. Es ändern sich nur Leerraum und – wenn du willst – die Groß-/Kleinschreibung von Schlüsselwörtern und Funktionsnamen. Bezeichner, String-Literale und Kommentare bleiben genau so, wie sie geschrieben sind.
› Warum bekomme ich "Unexpected end of input"?
Meist ist eine Klammer oder ein Anführungszeichen nicht geschlossen. Der Fehler zeigt auf das Ende der Abfrage; such nach der letzten öffnenden ( oder dem letzten ', zu dem das Gegenstück fehlt.