DevToolPal
DE

SQL-Formatierer

Verschönere SQL-Abfragen für MySQL, PostgreSQL, SQL Server, Oracle, SQLite, BigQuery und mehr.

Läuft lokal, wird nie hochgeladen

Optionen

Eingabe

0 Zeichen · 0 B

Ausgabe

0 Zeichen · 0 B

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

  1. Füge eine oder mehrere SQL-Anweisungen in das Feld Eingabe ein, zieh eine .sql-Datei darauf oder klick auf Beispiel.
  2. Wähl den Dialekt deiner Datenbank.
  3. Stell die Schlüsselwörter auf GROSSBUCHSTABEN, kleinbuchstaben oder lass sie wie eingegeben. Funktionsnamen wie COUNT folgen derselben Einstellung.
  4. Wähl 2 Leerzeichen, 4 Leerzeichen oder Tabs für die Einrückung.
  5. 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.