SQL Formatter e beautifier
Incolla una query disordinata e ottieni SQL pulito e indentato in modo coerente. Supporta 17 dialetti, la scelta delle maiuscole per le keyword e un minifier con un clic, tutto nel browser.
Funziona nel browserNessuna registrazioneNessun caricamento
Come usare SQL Formatter
- Incolla una o più istruzioni SQL nel riquadro di input oppure apri un file
.sql. - Scegli il dialetto del tuo database, così la sua sintassi, come i cast
::, le[parentesi quadre], i backtick o le stringhe$$, viene interpretata correttamente. - Imposta le maiuscole delle keyword (UPPER, lower o invariate), l'indentazione e il numero di righe vuote tra le istruzioni.
- Passa a Minifica per eliminare commenti e spazi per log, ORM o parametri URL.
- Copia il risultato o scaricalo come file
.sql.
Perché formattare l'SQL?
Le query copiate da log degli ORM, piani di esecuzione o codice applicativo arrivano di solito su un'unica lunga riga. Mettere ogni clausola (SELECT, FROM, JOIN, WHERE, GROUP BY) su una riga propria e indentare colonne e condizioni rende la logica leggibile. Rende anche più piccoli i diff nelle code review e ti aiuta a individuare una condizione di join mancante o un OR fuori posto.
Convenzioni di stile SQL
- Keyword in maiuscolo (
SELECT,WHERE) separano la sintassi SQL dai nomi di tabelle e colonne. La maggior parte delle guide di stile lo consiglia, anche se il minuscolo è diffuso nei team dbt e di analytics. - Una colonna per riga trasforma l'aggiunta o la rimozione di colonne in un diff di una sola riga.
- Un'indentazione coerente (2 o 4 spazi) dentro clausole e subquery mostra l'annidamento a colpo d'occhio.
- Terminatori di istruzione: chiudi ogni istruzione con
;così gli script con più istruzioni non sono ambigui.
Dialetti SQL supportati
SQL standard, 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 e TiDB. Se il parsing di una query fallisce, prova un dialetto più specifico: @variables, parametri $1 e operatori specifici di un vendor vengono riconosciuti solo nel loro dialetto.
Cosa fa il minifier
La modalità di minificazione rimuove i commenti --, # e /* */, riduce spazi e a capo a singoli spazi ed elimina gli spazi intorno a virgole e parentesi. Stringhe letterali e identificatori tra virgolette ('…', "…", `…`, […], $$…$$) vengono copiati byte per byte, quindi il significato della query non cambia mai.
Domande frequenti
Il mio SQL viene inviato a un server?
La formattazione cambia il comportamento della query?
Perché ottengo un errore di parsing su SQL valido?
::type o SQL Server per i nomi tra parentesi quadre come [bracketed] e i @params.