SQL Formatter & Beautifier
Indsæt en rodet forespørgsel, og få ren SQL med ensartet indrykning. Understøtter 17 dialekter, store/små bogstaver i nøgleord og minificering med ét klik, alt i din browser.
Kører i din browserIngen tilmeldingIntet uploades
Sådan bruger du SQL Formatter
- Indsæt en eller flere SQL-sætninger i inputfeltet, eller åbn en
.sql-fil. - Vælg din databasedialekt, så dens syntaks, f.eks.
::-casts,[brackets], backticks eller$$-strenge, parses korrekt. - Angiv store/små bogstaver for nøgleord (UPPER, lower eller bevar), indrykning og antallet af tomme linjer mellem sætninger.
- Skift til Minificér for at fjerne kommentarer og mellemrum til logs, ORM'er eller URL-parametre.
- Kopiér resultatet, eller download det som en
.sql-fil.
Hvorfor formatere SQL?
Forespørgsler kopieret fra ORM-logs, forespørgselsplaner eller applikationskode kommer som regel som én lang linje. Når hver klausul (SELECT, FROM, JOIN, WHERE, GROUP BY) står på sin egen linje, og kolonner og betingelser er indrykket, bliver logikken læsbar. Det gør også diffs i kodegennemgang mindre og hjælper dig med at opdage en manglende join-betingelse eller et forkert placeret OR.
Stilkonventioner for SQL
- Nøgleord med store bogstaver (
SELECT,WHERE) adskiller SQL-syntaks fra tabel- og kolonnenavne. De fleste stilguides anbefaler det, selvom små bogstaver er populære i dbt- og analyseteams. - Én kolonne pr. linje gør det at tilføje eller fjerne kolonner til et diff på én linje.
- Ensartet indrykning (2 eller 4 mellemrum) i klausuler og underforespørgsler viser indlejringen med et enkelt blik.
- Sætningsafslutning: afslut hver sætning med
;, så scripts med flere sætninger er entydige.
Understøttede SQL-dialekter
Standard 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 og TiDB. Hvis en forespørgsel ikke kan parses, så prøv en mere specifik dialekt: @variables, $1-parametre og leverandørspecifikke operatorer genkendes kun i deres egen dialekt.
Hvad minificeringen gør
Minificeringstilstanden fjerner ---, #- og /* */-kommentarer, sammenfolder mellemrum og linjeskift til enkelte mellemrum og fjerner mellemrum omkring kommaer og parenteser. Strengliteraler og citerede identifikatorer ('…', "…", `…`, […], $$…$$) kopieres byte for byte, så forespørgslens betydning aldrig ændres.
Ofte stillede spørgsmål
Bliver min SQL sendt til en server?
Ændrer formatering, hvad forespørgslen gør?
Hvorfor får jeg en parsefejl på gyldig SQL?
::type-casts eller SQL Server til [bracketed]-navne og @params.