So nutzt du: SQL Formatter
- Füge eine oder mehrere SQL-Anweisungen in SQL-Eingabe ein (oder öffne eine
.sql-Datei). - Wähle deinen Dialekt. Das ist wichtig für Dinge wie Backtick-Bezeichner in MySQL,
::-Casts in PostgreSQL oderTOPin SQL Server. - Wähle Schreibweise der Schlüsselwörter und Einrückung. Die formatierte Abfrage aktualisiert sich beim Tippen.
- Kopiere das Ergebnis oder lade es als
query.sqlherunter.
Was macht ein SQL-Formatter?
SQL ist unempfindlich gegenüber Leerzeichen. Abfragen, die von ORMs erzeugt, von einer Datenbank protokolliert oder in Eile geschrieben wurden, landen deshalb oft in einer riesigen Zeile. Ein SQL-Formatter analysiert die Anweisung und schreibt sie neu, wobei jede wichtige Klausel – SELECT, FROM, JOIN, WHERE, GROUP BY, ORDER BY – in einer neuen Zeile beginnt, Spaltenlisten darunter eingerückt sind und Unterabfragen eine Ebene tiefer verschachtelt werden. So fallen dir fehlende Join-Bedingungen, falsch platzierte ORs oder eine vergessene Spalte im GROUP BY viel schneller auf.
Beispiel
select u.id, count(o.id) as orders from users u left join orders o on o.user_id = u.id where u.active = 1 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
WHERE
u.active = 1
GROUP BY
u.id
Warum die Dialekt-Einstellung wichtig ist
Jede Datenbank erweitert SQL auf eigene Weise. Mit dem richtigen Dialekt erkennt der Formatter herstellerspezifische Schlüsselwörter und Syntax, statt sie als Fehler zu behandeln:
| Dialekt | Beispiele, die erkannt werden |
|---|---|
| MySQL / MariaDB | `Backtick`-Bezeichner, LIMIT 10, 20, ON DUPLICATE KEY UPDATE |
| PostgreSQL | ::-Casts, $1-Parameter, RETURNING, dollar-quotierte Funktionskörper |
| SQL Server (T-SQL) | [in eckigen Klammern]-Namen, TOP (10), @variablen, GO-Batches |
| BigQuery | STRUCT/ARRAY-Typen, Backtick-Pfade project.dataset.table, QUALIFY |
| Oracle PL/SQL | :bind-Variablen, CONNECT BY, q'[…]'-Strings |
Wenn eine Abfrage mit einem Parse-Fehler scheitert, liegt die häufigste Ursache in einem falschen Dialekt. Probiere es mit der Datenbank aus, die du tatsächlich einsetzt. Der Formatter basiert auf der Open-Source-Bibliothek sql-formatter und läuft komplett in deinem Browser. Produktive Abfragen mit Kundendaten verlassen deinen Rechner also nicht.
Schreibweise der Schlüsselwörter: Groß oder klein?
GROSSBUCHSTABEN bei Schlüsselwörtern sind die klassische Konvention und heben die Struktur der Abfrage von Tabellen- und Spaltennamen ab. Viele moderne Teams bevorzugen Kleinbuchstaben, weil sie sich leichter tippen und lesen lassen. Wähle eine Variante und bleib dabei. Linter wie SQLFluff können sie in der CI durchsetzen. Die Option Funktionen steuert separat Built-ins wie count() oder coalesce().
Willst du zwei Versionen einer Abfrage vergleichen? Füge sie in den Diff Checker ein. Hast du Ergebnisse als JSON exportiert? Mit JSON zu CSV machst du daraus eine Tabelle für dein Tabellenkalkulationsprogramm.
Auch gesucht als: sql formatieren, sql beautifier, sql online formatieren, mysql formatter, postgresql formatieren, t-sql formatter, sql einrücken, sql schön formatieren.
Passende Tools zu: SQL Formatter
- JSON Formatierer — Füge JSON ein, um es zu formatieren, zu minifizieren oder zu prüfen.
- CSV zu JSON — Füge CSV oder TSV ein und erhalte ein JSON-Array aus Objekten.
- JavaScript Formatierer — Entpacke und formatiere JavaScript, JSON oder JSX mit deiner bevorzugten Einrückung und deinem Klammerstil – oder entferne Leerzeichen und Kommentare mit einem geprüften Minifier.
- HTML Formatter — Füg minifiziertes oder unübersichtliches Markup ein und erhalte sauber und einheitlich eingerücktes HTML – inklusive eingebetteter <style>- und <script>-Blöcke.
Häufige Fragen
Ändert der Formatter, was meine Abfrage macht?
Warum erhalte ich einen Parse-Fehler?
{{ var }} können ihn verwirren.Kann ich mehrere Anweisungen auf einmal formatieren?
Ist es sicher, produktive Abfragen einzufügen?
WHERE-Klauseln bleiben also privat.Werden gespeicherte Prozeduren und DDL unterstützt?
CREATE TABLE, ALTER, INSERT, CTEs (WITH) und Fensterfunktionen werden vollständig unterstützt. Prozedurale Blöcke (PL/pgSQL, T-SQL-Kontrollfluss) werden nach bestem Bemühen formatiert.