Zum Inhalt springen
Kostenloses Tool

SQL Formatter online – SQL formatieren & verschönern

Mit dem SQL Formatter kannst du SQL online formatieren und minimieren, für MySQL, MariaDB und PostgreSQL: eine Klausel pro Zeile, eingerückte JOINs und Unterabfragen, Schlüsselwörter wie SELECT und WHERE einheitlich geschrieben. Kostenlos und ohne Anmeldung, deine Abfragen bleiben in deinem Browser und werden nicht hochgeladen.

Gebaut von Luca Stanek

Abfrage formatiert? Betreibe deine MySQL- oder PostgreSQL-Datenbank auf einem vServer mit voller Kontrolle.

Formatiertes SQL

Das formatierte SQL erscheint hier, sobald du links etwas einfügst.

Füge links deine SQL-Abfrage ein oder lade das Beispiel. Das Ergebnis erscheint sofort.

Deine SQL-Abfragen bleiben in deinem Browser: Sie werden weder hochgeladen noch gespeichert.

Beispiel-Ergebnis

Was dieser SQL Formatter aus deiner Abfrage macht

Eine Abfrage, wie sie aus Code oder Log kommt, und das Ergebnis mit 2 Leerzeichen und GROSS geschriebenen Schlüsselwörtern.

Eingabe:

select c.id,c.name,count(o.id) as orders,sum(o.total) as revenue from customers c left join orders o on o.customer_id=c.id and o.status='paid' where c.created_at>='2024-01-01' and (c.country='DE' or c.country='AT') group by c.id,c.name having count(o.id)>0 order by revenue desc limit 10;

Ergebnis:

SELECT
  c.id,
  c.name,
  COUNT(o.id) AS orders,
  SUM(o.total) AS revenue
FROM
  customers c
  LEFT JOIN orders o ON o.customer_id = c.id
    AND o.status = 'paid'
WHERE
  c.created_at >= '2024-01-01'
  AND (c.country = 'DE' OR c.country = 'AT')
GROUP BY
  c.id,
  c.name
HAVING
  COUNT(o.id) > 0
ORDER BY
  revenue DESC
LIMIT 10;

Minimiert, für Code, Konfigurationsdateien oder Logs:

SELECT c.id,c.name,COUNT(o.id) AS orders,SUM(o.total) AS revenue FROM customers c LEFT JOIN orders o ON o.customer_id=c.id AND o.status='paid' WHERE c.created_at>='2024-01-01' AND (c.country='DE' OR c.country='AT') GROUP BY c.id,c.name HAVING COUNT(o.id)>0 ORDER BY revenue DESC LIMIT 10;

Das spart 44 von 332 Zeichen (13 %), die Abfrage bleibt dieselbe.

So funktioniert es

So formatierst du SQL online

Drei Schritte, ohne Anmeldung und ohne Installation.

Schritt 1

SQL einfügen

Füge deine Abfrage ein, öffne eine .sql-Datei bis 2 MB oder lade das Beispiel.

Schritt 2

Optionen wählen

Wähle Formatieren oder Minimieren und den Dialekt (automatisch, MySQL/MariaDB, PostgreSQL, Standard-SQL). Beim Formatieren stellst du außerdem die Einrückung (2 Leerzeichen, 4 Leerzeichen, Tab) und die Schreibweise der Schlüsselwörter (GROSS, klein, unverändert) ein.

Schritt 3

Ergebnis übernehmen

Prüfe das Ergebnis und eventuelle Hinweise mit Zeile und Spalte, dann kopiere es oder speichere es als .sql-Datei.

Zwei Modi

SQL formatieren oder minimieren

Beide Modi arbeiten mit derselben Eingabe, du wechselst oben im Tool mit einem Klick.

Formatieren: der SQL Beautifier

Macht lange, einzeilige Abfragen aus Code, Logs oder ORMs lesbar: Klauseln auf eigenen Zeilen, eingerückte JOINs, Bedingungen, Unterabfragen, CASE und CTEs. Die Statistik zeigt Anweisungen, Zeilen und den erkannten Dialekt.

Minimieren: der SQL Minifier

Entfernt Kommentare und überflüssigen Leerraum, etwa für Code, Konfigurationsdateien oder Logs. Optimizer-Hints /*+ … */ und MySQL-Kommentare /*! … */ bleiben. Die Statistik zeigt die Zeichen vorher und nachher und die Ersparnis in Prozent.

Regeln

So formatiert der SQL Formatter

Klauseln und Listen

SELECT, FROM, WHERE, GROUP BY und Co. stehen auf eigenen Zeilen, Spalten und Werte eine pro Zeile.

JOINs und Bedingungen

JOINs stehen eingerückt unter FROM, AND und OR beginnen in WHERE und ON eine neue Zeile.

Unterabfragen und CASE

Unterabfragen, WITH und CASE werden eingerückt, die schließende Klammer steht auf Höhe der öffnenden.

Nichts verändert

Namen, Texte und Kommentare bleiben, nur Schlüsselwörter ändern die Schreibweise. Mehrdeutige Wörter wie status oder date bleiben, wie du sie getippt hast.

Unterstützte SQL-Dialekte und ihre Besonderheiten
DialektWas beachtet wird
MySQL / MariaDBBackticks, #-Kommentare, ON DUPLICATE KEY UPDATE
PostgreSQL::, ->>, $1, $$-Quotes, ILIKE, RETURNING
Standard-SQLEinfache und doppelte Anführungszeichen, -- und /* */

Grenzen: Die Syntax wird nicht gegen eine Datenbank geprüft, BEGIN … END und T-SQL- oder Oracle-Besonderheiten werden nicht umgebaut.

Kein Ersatz für FORMAT(): Der Formatter ändert das Layout der Abfrage, nicht ihre Werte. Ein Datum formatierst du in der Datenbank, etwa mit DATE_FORMAT() in MySQL und MariaDB oder TO_CHAR() in PostgreSQL.

Mehr entdecken

Weitere Entwickler-Tools zum SQL Formatter

JSON und XML formatieren, YAML prüfen, zwei Versionen einer Abfrage vergleichen oder reguläre Ausdrücke testen.

FAQ

Häufig gestellte Fragen

Kurze Antworten rund um den SQL Formatter.

Beides meint dasselbe Werkzeug: Ein SQL Formatter bringt eine Abfrage in ein lesbares Layout, mit einer Klausel pro Zeile, eingerückten JOINs, Bedingungen und Unterabfragen sowie einheitlich geschriebenen Schlüsselwörtern. Praktisch für Abfragen aus Logs, ORMs oder Dumps.

Nein. Es ändern sich nur Leerraum und die Schreibweise eindeutiger Schlüsselwörter, Funktionen und Datentypen. Namen, Zahlen, Texte und Kommentare bleiben, wie sie sind. Wörter wie status oder date, die auch Spaltennamen sein können, bleiben so, wie du sie getippt hast.

MySQL und MariaDB, PostgreSQL und Standard-SQL. Der Dialekt wird automatisch erkannt und beim Formatieren angezeigt, du kannst ihn auch fest wählen. Besonderheiten von T-SQL oder Oracle und Blöcke wie BEGIN … END baut der Formatter nicht um.

Wähle „Minimieren“. Kommentare und überflüssiger Leerraum fallen weg, Optimizer-Hints wie /*+ … */ und MySQL-Kommentare /*! … */ bleiben erhalten. Die Statistik zeigt die Zeichen vorher und nachher und wie viel Prozent du sparst.

Nicht gegen eine Datenbank: Die Abfrage wird weder ausgeführt noch vollständig geprüft. Der Formatter meldet aber nicht beendete Texte, Namen in Anführungszeichen, Kommentare und Dollar-Quotes mit Zeile und Spalte, warnt bei offenen oder überzähligen Klammern und springt auf Klick zur Stelle.

Nein. Alles läuft in deinem Browser, es gibt keinen Upload und keine Speicherung.

Ja. Über „Datei öffnen“ lädst du .sql-, .txt-, .ddl-, .psql- oder .mysql-Dateien bis 2 MB. Das Ergebnis kopierst du oder speicherst es als formatted.sql bzw. minified.sql.

Ja. Anweisungen mit Semikolon werden einzeln formatiert und durch eine Leerzeile getrennt. Platzhalter wie ?, :name, $1 und %s bleiben unverändert.

Noch weitere Fragen?

Support kontaktieren
Baust du gerade etwas Eigenes?

Deine Datenbank braucht einen zuverlässigen Server

Ein ZAP-Hosting vServer bringt deine Anwendung samt Datenbank zuverlässig online.

4,4/5 Trustpilot32.000+ Aktive ServerSeit 2010

Kein Setup. Kein Risiko. In Sekunden online.

Flexible LaufzeitJederzeit kündbarIn 60 Sekunden online

Auf der Suche nach weiteren Tools? Alle Entwickler-Tools ansehen