Zum Inhalt springen

SQL-Abfragen formatieren

Formatieren oder minimieren Sie SQL für MySQL, PostgreSQL, SQL Server, SQLite, BigQuery, Oracle und 14 weitere Dialekte, mit frei wählbarem Stil, direkt in Ihrem Browser.

Formatiert
Klicken Sie auf „SQL formatieren“, um Ihre Abfrage zu formatieren.
Läuft in Ihrem Browser · kein UploadSo funktioniert's

So verwenden Sie SQL-Formatter

  1. 1

    SQL einfügen

    Fügen Sie eine Abfrage oder ein ganzes Skript ein oder öffnen Sie eine .sql-Datei; „Beispiel“ zeigt eine unordentliche Abfrage zum Ausprobieren.

  2. 2

    SQL-Dialekt wählen

    Wählen Sie Ihre Datenbank, damit Anführungszeichen, Operatoren und Schlüsselwörter richtig erkannt werden.

  3. 3

    Stil festlegen

    Wählen Sie Schreibweise der Schlüsselwörter, Einrückung, Position der Kommas und Layout passend zu den Konventionen Ihres Teams.

  4. 4

    Formatieren und kopieren

    Klicken Sie auf „SQL formatieren“ oder „Minimiert“ und kopieren Sie dann das hervorgehobene Ergebnis oder laden Sie es als .sql-Datei herunter.

Limits und Pro

Kostenlos ohne Registrierung: 20 Dialekte, .sql-Dateien bis 10 MB und Skripte, die innerhalb von 20 Sekunden formatiert sind; Ausgaben mit mehr als 600.000 Zeichen werden nur teilweise angezeigt, aber vollständig kopiert oder heruntergeladen.

Pro entfernt die Werbung; der Formatierer selbst ist in jedem Tarif derselbe. Pro ansehen

Über SQL-Formatter

Fügen Sie eine einzeilige Abfrage aus einem Log, der Debug-Ausgabe eines ORM oder der Chat-Nachricht einer Kollegin oder eines Kollegen ein, und dieser Formatierer ordnet sie so an, wie es eine sorgfältige Person tun würde: eine Klausel pro Zeile, ausgewählte Spalten und Joins unter ihrem Schlüsselwort eingerückt und Unterabfragen verschachtelt, sodass die Struktur auf einen Blick erkennbar ist. Er versteht 20 SQL-Dialekte – Standard-SQL, MySQL, MariaDB, PostgreSQL, SQL Server T-SQL, SQLite, Oracle PL/SQL, BigQuery, Snowflake, Redshift, Spark, Trino, DuckDB, ClickHouse, Hive, Db2, Db2 for i, SingleStore, TiDB und Couchbase N1QL –, damit dialektspezifische Syntax wie Backtick-Bezeichner, eckige Klammern, ::-Casts oder Dollar-Quoting erhalten bleibt.

Sie bestimmen den Stil: Schlüsselwörter in Großbuchstaben, Kleinbuchstaben oder wie geschrieben; Funktionsnamen und Datentypen ebenso; zwei Leerzeichen, vier Leerzeichen oder Tabulatoren; Kommas am Zeilenende oder am Zeilenanfang; AND und OR vor oder nach dem Zeilenumbruch; dazu ein Standard-Layout oder ein tabellarisches Layout, das Schlüsselwörter in einer Spalte ausrichtet. Skripte mit mehreren Anweisungen werden durch eine Leerzeile getrennt. Minimieren macht das Gegenteil: Es entfernt Kommentare und überflüssige Leerraumzeichen und lässt Zeichenketten, in Anführungszeichen gesetzte Namen und Optimizer-Hints unangetastet.

Die Ausgabe ist farblich hervorgehoben und lässt sich kopieren oder als .sql-Datei herunterladen. Die Formatierung nutzt die Open-Source-Bibliothek sql-formatter, die beim ersten Klick auf „SQL formatieren“ geladen wird und in einem Hintergrund-Worker läuft, damit lange Skripte die Seite nicht blockieren.

Der Formatierer ändert nur Leerraum und Groß- und Kleinschreibung. Er prüft keine Tabellen- oder Spaltennamen, führt die Abfrage nicht aus und optimiert sie nicht. Gespeicherte Prozeduren mit ungewöhnlicher herstellerspezifischer Syntax erfordern unter Umständen den am besten passenden Dialekt.

Datenschutz

SQL wird in Ihrem Browser von einem Web Worker formatiert. Abfragen mit Tabellennamen, Kundendaten oder Zugangsdaten werden daher nie an einen Server gesendet. Ihre Auswahl für Dialekt und Stil wird im lokalen Speicher abgelegt; das SQL selbst wird nicht gespeichert.

Funktionen

20 SQL-Dialekte

MySQL, PostgreSQL, SQL Server, Oracle, BigQuery, Snowflake und 14 weitere.

Ihr eigener Stil

Schreibweise der Schlüsselwörter, Einrückung, Kommas am Anfang oder Ende, Position von AND/OR und tabellarisches Layout.

Auch minimieren

Entfernt Kommentare und Leerraum, um SQL in Code einzubetten, und lässt Zeichenketten und Hints unverändert.

SQL-Formatter: Häufig gestellte Fragen

Ändert die Formatierung, was meine Abfrage bewirkt?
Nein. Es ändern sich nur Leerraum, Zeilenumbrüche und die Groß- und Kleinschreibung von Schlüsselwörtern, Funktionen und Datentypen; Bezeichner, Zeichenketten und Kommentare bleiben exakt erhalten. Die Schreibweise der Schlüsselwörter ist unkritisch, da SQL-Schlüsselwörter nicht zwischen Groß- und Kleinschreibung unterscheiden. Bezeichner lässt dieser Formatierer bewusst unverändert, da PostgreSQL Namen in Anführungszeichen mit Groß- und Kleinschreibung behandelt.
Warum erhalte ich einen Parse-Fehler?
Der Formatierer muss die Struktur der Anweisung erkennen. Eine nicht geschlossene Klammer, ein fehlendes Schlüsselwort oder Syntax einer anderen Datenbank stoppt ihn daher. Die Meldung nennt Zeile und Spalte sowie das, was dort erwartet wurde. Wählen Sie den Dialekt Ihrer Datenbank – Bezeichner in eckigen Klammern erfordern SQL Server, Backticks MySQL, MariaDB oder BigQuery – und prüfen Sie, ob am Ende unfertige Anweisungen stehen.
Sollen Kommas am Zeilenanfang oder am Zeilenende stehen?
Kommas am Zeilenende sind der verbreitetste Stil und das, was die meisten Tools erzeugen. Kommas am Zeilenanfang erleichtern es, die letzte Spalte auszukommentieren, und halten Diffs beim Hinzufügen einer Spalte auf eine Zeile begrenzt, weshalb manche Data-Teams sie bevorzugen. Wählen Sie, was Ihr Team verwendet; die Option gilt nur für das Standard-Layout.
Kann es gespeicherte Prozeduren und Skripte mit vielen Anweisungen formatieren?
Ja. Fügen Sie ein vollständiges Skript ein, und jede Anweisung wird formatiert und durch eine Leerzeile getrennt, darunter CREATE TABLE, INSERT, UPDATE, MERGE und gängige prozedurale Blöcke. Herstellerspezifischer prozeduraler Code, etwa komplexe T-SQL-Batches mit GO-Trennern oder PL/SQL-Pakete, wird eventuell nicht vollständig verstanden; wählen Sie den passenden Dialekt und formatieren Sie kleinere Blöcke, falls ein Abschnitt fehlschlägt.
Was entfernt „Minimiert“?
Minimiert löscht Kommentare mit -- und /* */ (bei MySQL und MariaDB auch # -Kommentare), fasst Folgen von Leerzeichen und Zeilenumbrüchen zu einzelnen Leerzeichen zusammen und entfernt Leerzeichen neben Kommas und Klammern. Zeichenketten, in Anführungszeichen gesetzte Bezeichner und Optimizer-Hints in der Form /*+ … */ oder MySQLs /*! … */ bleiben erhalten, sodass die minimierte Abfrage genauso läuft wie das Original.
Alle: entwickler-tools