SQL Formatter & Beautifier

Plak een rommelige query en krijg nette SQL met consequente inspringing. Ondersteunt 17 dialecten, hoofdlettergebruik voor keywords en een minifier met één klik, allemaal in je browser.

Draait in je browserGeen account nodigNiets wordt geüpload

Geformatteerde SQL

Zo gebruik je de SQL Formatter

  1. Plak een of meer SQL-statements in het invoerveld of open een .sql-bestand.
  2. Kies je databasedialect, zodat de syntax ervan, zoals ::-casts, [brackets], backticks of $$-strings, correct wordt geparsed.
  3. Stel het hoofdlettergebruik van keywords in (UPPER, lower of behouden), de inspringing en het aantal lege regels tussen statements.
  4. Schakel over naar Minificeren om commentaar en witruimte te verwijderen voor logs, ORM's of URL-parameters.
  5. Kopieer het resultaat of download het als .sql-bestand.

Waarom SQL formatteren?

Queries uit ORM-logs, queryplannen of applicatiecode komen meestal binnen als één lange regel. Door elke clausule (SELECT, FROM, JOIN, WHERE, GROUP BY) op een eigen regel te zetten en kolommen en voorwaarden te laten inspringen, wordt de logica leesbaar. Het maakt diffs in code reviews ook kleiner en helpt je een ontbrekende join-voorwaarde of een verkeerd geplaatste OR te ontdekken.

Stijlconventies voor SQL

  • Keywords in hoofdletters (SELECT, WHERE) onderscheiden SQL-syntax van tabel- en kolomnamen. De meeste stijlgidsen raden dit aan, al zijn kleine letters populair bij dbt- en analyticsteams.
  • Eén kolom per regel maakt van het toevoegen of verwijderen van kolommen een diff van één regel.
  • Consequente inspringing (2 of 4 spaties) binnen clausules en subqueries laat de nesting in één oogopslag zien.
  • Statement-afsluiters: sluit elk statement af met ;, zodat scripts met meerdere statements eenduidig zijn.

Ondersteunde SQL-dialecten

Standaard-SQL, PostgreSQL, MySQL, MariaDB, SQLite, Microsoft SQL Server (T-SQL), Oracle PL/SQL, Google BigQuery, Snowflake, Amazon Redshift, Spark SQL, Trino/Presto, Hive, IBM Db2, Couchbase N1QL, SingleStore en TiDB. Lukt het parsen van een query niet, probeer dan een specifieker dialect: @variables, $1-parameters en leverancierspecifieke operators worden alleen in hun eigen dialect herkend.

Wat de minifier doet

De minify-modus verwijdert ---, #- en /* */-commentaar, voegt witruimte en regeleinden samen tot enkele spaties en haalt spaties rond komma's en haakjes weg. Stringliterals en gequote identifiers ('…', "…", `…`, […], $$…$$) worden byte voor byte overgenomen, dus de betekenis van de query verandert nooit.

Veelgestelde vragen

Wordt mijn SQL naar een server gestuurd?
Nee. Het formatteren gebruikt de opensourcelibrary sql-formatter, die in je browser draait. Queries met tabelnamen, klantgegevens of inloggegevens blijven op je computer.
Verandert formatteren wat de query doet?
Nee. Alleen witruimte, regeleinden en (als je dat kiest) het hoofdlettergebruik van keywords veranderen. Identifiers, stringliterals en commentaar blijven zoals ze geschreven zijn.
Waarom krijg ik een parsefout bij geldige SQL?
De query gebruikt waarschijnlijk syntax die specifiek is voor een andere database. Kies het bijbehorende dialect, bijvoorbeeld PostgreSQL voor ::type-casts of SQL Server voor [bracketed]-namen en @params.
Kan ik meerdere statements tegelijk formatteren?
Ja. Scheid statements met puntkomma's. Je kunt kiezen hoeveel lege regels er in de uitvoer tussen komen.
Verandert het hoofdlettergebruik van keywords mijn kolomnamen?
Nee. Alleen gereserveerde keywords, datatypes en ingebouwde functies krijgen ander hoofdlettergebruik. Tabel- en kolomnamen behouden hun oorspronkelijke spelling.

Gerelateerde tools