🗄️
Developer/SQL Formatter

SQL Formatter

Format and beautify SQL queries with syntax highlighting. Supports 6 dialects — Standard SQL, MySQL, PostgreSQL, T-SQL, PL/SQL, and SQLite.

100% LOCAL4 dialectsSyntax highlightCompress modeCopy result
Saved Queries· Auto-save on
▾
Der RechnerPage 1
Generic ANSI SQL
Input SQL
Formatted SQL
SELECT
  u.id,
  u.name,
  u.email,
  count(o.id) AS order_count,
  sum(o.total) AS total_spent
FROM
  users u
  LEFT JOIN orders o ON u.id = o.user_id
WHERE
  u.created_at >= '2026-01-01'
  AND u.status = 'active'
GROUP BY
  u.id,
  u.name,
  u.email
HAVING
  count(o.id) > 0
ORDER BY
  total_spent DESC
LIMIT
  10;
Query Stats
Characters286
Lines22
Keywords8
DialectStandard SQL
ModeFormatted
Data Source & Legal Disclaimer
Effective: 2026
Sources: Browser-side processing (no external API)

This tool runs 100% in your browser. All computation happens locally on your device — your input is never uploaded to any server. Results are for reference only.

See all data sources & update policy →
So funktioniert esPage 2

How SQL formatting works — illustrated

A formatter is a small compiler pipeline with two stages. The lexer reads the raw query and classifies each run of characters as a keyword, identifier, string literal, number, or operator — the same tokens a database parser would see. The printer then re-emits that token stream: it converts keywords to the chosen case (UPPERCASE, lowercase, or preserve), puts each major clause — SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY — on its own line, indents nested expressions by 2 spaces (or a tab), and always leaves string literals byte-for-byte intact. That last rule is what makes compress mode safe: newlines are stripped outside literals, so a multi-line string inside a query survives minification. Dialect support (MySQL backticks, T-SQL brackets, Postgres dollar quotes) tunes both stages.

The tokenizer-and-printer pipeline
SQL FORMATTING PIPELINEselect u.id,u.name from users u where u.age>18LEXER — TOKEN STREAMselect u.id, u.name from users u where u.age > 18PRINTER: keyword case · 2-space indent · one clause per line · literals preservedSELECT u.id, u.nameFROM users uWHERE u.age > 18

Formatting never changes what the query means — it only changes how the token stream is laid out.

Worked example

Ken maintains an analytics dashboard and pastes a minified SQL query his colleague copied straight out of the database console.

  1. Paste:He drops in "select u.id,u.name,count(o.id) as c from users u left join orders o on u.id=o.user_id where u.created_at>='2026-01-01' group by u.id order by c desc limit 10;" as one cramped line.
  2. Dialect:He selects PostgreSQL (dollar quotes, ARRAY, RETURNING) and sets keyword case to UPPERCASE with a 2-space indent.
  3. Format:The formatter reflows it — SELECT, FROM, LEFT JOIN, WHERE, GROUP BY, ORDER BY each on their own line, with the string literal '2026-01-01' left byte-for-byte intact.
  4. Verify:The query stats show lines jump from 1 to 7; he copies the formatted version back into the query editor and it runs with identical results.
FAQ & DetailsPage 3

To format SQL: paste your query — the tool adds proper indentation, capitalizes keywords, and aligns clauses for readability. Supports MySQL, PostgreSQL, SQLite, and SQL Server.

FreeToolHub SQL Formatter is a free browser-based tool that beautifies and validates SQL queries, no signup, no upload.

Über dieses Tool

Was ist dieses Tool?

Formatieren und verschönern Sie SQL-Abfragen mit Syntax-Hervorhebung. Unterstützt Standard-SQL, MySQL, PostgreSQL und T-SQL. Komprimierungsmodus verfügbar. Kostenlos, keine Anmeldung erforderlich.

4 dialectsSyntax highlightCompress modeCopy result

Was ist der SQL Formatter?

Dieser Formatter verschönert SQL-Abfragen: Er analysiert die Anweisung, wendet konsistente Einrückung und Groß-/Kleinschreibung für Schlüsselwörter an, bricht lange Klauseln in lesbare Zeilen auf und fügt Syntax-Hervorhebungen hinzu, damit die Struktur hervorsticht. Er verarbeitet Standard-SQL sowie die Dialekte, die im täglichen Einsatz wichtig sind – MySQL, PostgreSQL und T-SQL – und enthält einen Komprimierungsmodus, der Leerzeichen für das Versenden von Abfragen über APIs oder deren Einbettung in Code entfernt, wo Größe eine Rolle spielt. Die Formatierung läuft vollständig in Ihrem Browser; Abfragen berühren niemals einen Server, was bei allem, was mit Produktionsdaten zu tun hat, wichtig ist.

Wer sollte dieses Tool verwenden?

Analysten, die tausendzeichenlange einzeilige Abfragen aus Protokollen oder BI-Tools übernehmen und sie lesbar machen müssen, bevor sie sie bearbeiten. Entwickler, die Abfragen in Code-Reviews überprüfen, bei denen Formatierungsgeräusche die Logikänderungen überdecken. Datenbankadministratoren, die gespeicherte Abfragen und Ansichten mit konsistentem Stil dokumentieren. Daten-Ingenieure, die Abfragen zwischen Dialekten verschieben und dialektgerechte Schlüsselwortbehandlung wünschen. Jeder, der SQL in Tickets, Dokumente oder Slack einfügt, wo eine Textwand den Leser überfordert.

Wie funktioniert es?

(1) Fügen Sie Ihre Abfrage ein – einzelne Anweisung oder ein Stapel. (2) Wählen Sie den Dialekt: Standard-SQL, MySQL, PostgreSQL oder T-SQL, damit Schlüsselwörter und Funktionen entsprechend diesem Format formatiert werden. (3) Der Formatter rückt verschachtelte Unterabfragen und JOIN-Klauseln auf eigene Zeilen ein, schreibt Schlüsselwörter in Großbuchstaben und richtet Spaltenlisten aus; passen Sie die Einrückungsbreite an, wenn sich der Stil Ihres Teams unterscheidet. (4) Verwenden Sie den Komprimierungsmodus, wenn Sie die Abfrage kompakt benötigen. (5) Kopieren Sie das Ergebnis; die Formatierung ist semantikerhaltend, sodass die Ausgabe identisch ausgeführt wird.

Warum ist SQL-Formatierung wichtig?

Unformatiertes SQL ist der Ort, an dem sich Fehler verstecken. Eine WHERE-Klausel, die auf eine Zeile gequetscht ist, macht ein fehlendes AND unsichtbar; ausgerichtete ON-Bedingungen machen falsche Join-Schlüssel auf einen Blick offensichtlich; konsistente Schlüsselwort-Groß-/Kleinschreibung lässt das Auge Struktur und Daten sofort unterscheiden. Die Konventionen, die sich über Teams hinweg etabliert haben: Schlüsselwörter in Großbuchstaben und auf eigenen Zeilen für Hauptklauseln (SELECT, FROM, WHERE, GROUP BY, ORDER BY); eine Spalte pro Zeile in SELECT-Listen für lange Abfragen, mit einer nachfolgenden Komma-Konvention, die Ihr Team einmal festlegt; JOINs mit ihrer ON-Bedingung eingerückt unter dem Join; Unterabfragen um eine Ebene eingerückt und mit einer Leerzeile davor. Über die Lesbarkeit hinaus ist Formatierung ein Kooperationsvertrag: Code-Review an konsistent formatierten Abfragen prüft die Logik anstatt über Leerzeichen zu streiten, und Diffs an formatierten Abfragen zeigen tatsächliche Änderungen anstatt Reflow-Geräusche. Die Dialektwahl ist wichtiger, als die Leute erwarten – T-SQL und PostgreSQL behandeln bestimmte Funktionen und Bezeichner unterschiedlich –, also formatieren Sie mit dem Dialekt, den Sie ausführen, und wenn Sie Abfragen über APIs versenden oder sie in Anwendungcode einbetten, entfernt der Komprimierungsmodus die Leerzeichen wieder.

Häufige Fragen

Warum sind SQL-Dialekte für die Formatierung wichtig?

Weil dieselbe Abfrage je nach Engine unterschiedlich geschrieben werden kann: PostgreSQL verwendet LIMIT, während SQL Server TOP verwendet, MySQL Bezeichner mit Backticks zitiert, während PostgreSQL doppelte Anführungszeichen verwendet, und PL/SQL-Pakete Blöcke hinzufügt, die Standard-SQL nie hat. Die Formatierung mit dem falschen Dialekt birgt das Risiko, um Syntax umzubrechen, die der Motor nicht akzeptiert. Wählen Sie zuerst den Dialekt – der passt die Schlüsselwortbehandlung an, um übereinzustimmen.

GROßBUCHSTABEN oder Kleinbuchstaben für Schlüsselwörter – gibt es einen Standard?

GROßBUCHSTABEN für Schlüsselwörter sind eine Konvention aus der Lochkarten-Ära und bleiben der häufigste Hausstil in Unternehmens-SQL; Kleinbuchstaben gewinnen in neueren Teams und in Abfrage-Generatoren, die sowieso syntaxhervorheben. Beides ist in Ordnung – Konsistenz innerhalb eines Code-Basis schlägt jede externe Regel. Der Formatter schaltet die Groß-/Kleinschreibung mit einem Klick um, damit Sie zur Datei passen, die Sie bearbeiten, und nicht gegen sie kämpfen.

Verlässt mein SQL den Browser, wenn ich es formatiere?

Nein – Parsing und Formatierung laufen vollständig in JavaScript auf Ihrer Seite, und nichts wird hochgeladen. Das ist wichtiger, als es klingt: Echte Abfragen enthalten Tabellennamen, Spaltennamen und WHERE-Werte, die Ihr Geschäft beschreiben. Sie in eine zufällige Website einzufügen, ist ein Datenleck, das auf eine Protokolldatei wartet; hier verlässt die Rundreise nie den Tab.

Was ist der führende-Komma-Stil und warum verwenden ihn die Leute?

Führende Kommas setzen das Komma am Anfang jeder Spaltenzeile (`, col2` anstelle von `col1,`), so dass Hinzufügen oder Entfernen einer Zeile deren Nachbar nie berührt – sauberere Diffs im Code-Review und weniger fehlende-Komma-Fehler beim Bearbeiten langer SELECT-Listen. Nachfolgender Stil liest sich für die meisten Menschen natürlicher. Der Formatter unterstützt beide; wählen Sie, was Ihr bestehender Code bereits tut.

Welche SQL-Dialekte werden unterstützt?

Standard-SQL (ANSI), MySQL, PostgreSQL und T-SQL (SQL Server). Er verarbeitet komplexe Abfragen einschließlich JOINs, Unterabfragen, CTEs (WITH-Klauseln), Fensterfunktionen und UNION/INTERSECT/EXCEPT. Der Formatter wendet konsistente Einrückung, Schlüsselwort-Großschreibung (SELECT/FROM/WHERE) und richtet Spaltenlisten zur Lesbarkeit aus. Ein Komprimierungsmodus minimiert Leerzeichen für Produktionsabfragen.

Erhalten Kommentare und String-Literale die Formatierung?

Ja. Der Parser tokenisiert SQL, um String-Literale (einfache Anführungszeichen), Zeilenkommentare (--), Blockkommentare (/* */) und Bezeichner von Schlüsselwörtern zu unterscheiden. Kommentare und String-Inhalte bleiben genau wie sie sind. Dies verhindert, dass der Formatter Inline-SQL-Hinweise bricht oder String-Werte während der Formatierung ändert.

Which SQL dialects does it support?

Standard SQL (ANSI), MySQL, PostgreSQL, and T-SQL (SQL Server). It handles complex queries including JOINs, subqueries, CTEs (WITH clauses), window functions, and UNION/INTERSECT/EXCEPT. The formatter applies consistent indentation, keyword capitalization (SELECT/FROM/WHERE), and aligns column lists for readability. A compression mode minifies whitespace for production queries.

Does it preserve comments and string literals?

Yes. The parser tokenizes SQL to distinguish string literals (single quotes), line comments (--), block comments (/* */), and identifiers from keywords. Comments and string contents are preserved exactly as-is. This prevents the formatter from breaking inline SQL hints or altering string values during formatting.

Verwandte Tools

Teilen:𝕏inf⬆
Joke of the Day
Oct 22

What do you call a really smart cookie?

Free core, no account

Keep the Free Edition Free

No signups, no data sold. Every tool is free to use — the free tier allows 5 downloads or saves per day, and the optional Pro plan ($7/mo, $59/yr) adds unlimited downloads, batch processing, white-label exports and an ad-free experience.

☕Support me on Ko-fi— support the free tier

100% of proceeds go towards hosting & building more free tools.