Vai al contenuto

Formattare query SQL

Formatta o minifica il codice SQL per MySQL, PostgreSQL, SQL Server, SQLite, BigQuery, Oracle e altri 14 dialetti, con lo stile che preferisci, direttamente nel tuo browser.

Formattato
Premi Formatta SQL per rendere leggibile la query.
Funziona nel tuo browser · nessun caricamentoCome funziona

Come usare Formattatore SQL

  1. 1

    Incolla il tuo SQL

    Incolla una query o un intero script, oppure apri un file .sql; con Esempio vedi una query disordinata da provare.

  2. 2

    Scegli il dialetto

    Seleziona il tuo database, così virgolette, operatori e parole chiave vengono riconosciuti correttamente.

  3. 3

    Imposta lo stile

    Scegli maiuscole/minuscole delle parole chiave, rientro, posizione delle virgole e layout in base alle convenzioni del tuo team.

  4. 4

    Formatta e copia

    Premi Formatta SQL o Minifica, poi copia il risultato evidenziato o scaricalo come .sql.

Limiti e Pro

Gratis e senza registrazione: 20 dialetti, file .sql fino a 10 MB e script formattati entro 20 secondi; gli output oltre 600.000 caratteri vengono mostrati in parte nell'anteprima, ma copiati o scaricati per intero.

Pro toglie la pubblicità; il formattatore è lo stesso in ogni piano. Scopri Pro

Informazioni su Formattatore SQL

Incolla una query su una sola riga presa da un log, dall'output di debug di un ORM o dal messaggio di un collega: questo formattatore la dispone come farebbe una persona attenta, con una clausola per riga, colonne selezionate e join rientrati sotto la loro parola chiave e sottoquery annidate, così la struttura si legge a colpo d'occhio. Riconosce 20 dialetti SQL – SQL standard, MySQL, MariaDB, PostgreSQL, SQL Server T-SQL, SQLite, Oracle PL/SQL, BigQuery, Snowflake, Redshift, Spark, Trino, DuckDB, ClickHouse, Hive, Db2, Db2 for i, SingleStore, TiDB e Couchbase N1QL – quindi la sintassi specifica, come gli identificatori tra backtick, le parentesi quadre, i cast con :: o le stringhe con dollaro, resta intatta.

Scegli tu lo stile: parole chiave in maiuscolo, in minuscolo o come le hai scritte; lo stesso per i nomi delle funzioni e i tipi di dati; due spazi, quattro spazi o tabulazioni; virgole a fine o a inizio riga; AND e OR prima o dopo l'a capo; e un layout standard o tabulare che allinea le parole chiave in colonna. Gli script con più istruzioni vengono separati da una riga vuota. La minificazione fa il contrario: elimina commenti e spazi superflui, lasciando intatti stringhe, nomi tra virgolette e hint per l'ottimizzatore.

Il risultato è evidenziato con i colori della sintassi e puoi copiarlo o scaricarlo come file .sql. La formattazione usa la libreria open source sql-formatter, caricata la prima volta che premi Formatta SQL, e gira in un worker in background, così gli script lunghi non bloccano la pagina.

Il formattatore modifica solo spazi e maiuscole/minuscole. Non verifica i nomi di tabelle o colonne, non esegue la query e non la riscrive per migliorarne le prestazioni; per le stored procedure con sintassi particolari del produttore può servire il dialetto più vicino.

Privacy

L'SQL viene formattato nel tuo browser da un Web Worker, quindi le query con nomi di tabelle, dati dei clienti o credenziali non vengono mai inviate a un server. Dialetto e stile scelti restano nella memoria locale; l'SQL in sé non viene salvato.

Funzionalità

20 dialetti SQL

MySQL, PostgreSQL, SQL Server, Oracle, BigQuery, Snowflake e altri 14.

Il tuo stile

Maiuscole/minuscole delle parole chiave, rientro, virgole a inizio o fine riga, posizione di AND/OR e layout tabulare.

Anche minificazione

Elimina commenti e spazi per inserire l'SQL nel codice, senza toccare stringhe e hint.

Formattatore SQL: domande frequenti

La formattazione cambia ciò che fa la mia query?
No. Cambiano solo spazi, a capo e maiuscole/minuscole di parole chiave, funzioni e tipi di dati; identificatori, stringhe e commenti restano esattamente come sono. Per le parole chiave non c'è rischio, perché in SQL non distinguono maiuscole e minuscole. Altrove, trasformare gli identificatori può essere un problema: PostgreSQL distingue i nomi tra virgolette, per questo qui non li tocchiamo.
Perché ricevo un errore di analisi?
Il formattatore deve riconoscere la struttura dell'istruzione, quindi una parentesi non chiusa, una parola chiave mancante o la sintassi di un altro database lo bloccano. Il messaggio indica riga e colonna e ciò che si aspettava. Scegli il dialetto del tuo database – le parentesi quadre richiedono SQL Server, i backtick MySQL, MariaDB o BigQuery – e controlla che non ci siano istruzioni incomplete in fondo.
Meglio le virgole a inizio o a fine riga?
Le virgole a fine riga sono lo stile più diffuso e quello prodotto dalla maggior parte degli strumenti. Quelle a inizio riga rendono facile commentare l'ultima colonna e limitano le differenze a una sola riga quando ne aggiungi una, per questo certi team di dati le preferiscono. Scegli lo stile del tuo team; l'opzione vale solo per il layout Standard.
Può formattare stored procedure e script con molte istruzioni?
Sì. Incolla uno script completo e ogni istruzione viene formattata e separata da una riga vuota, comprese CREATE TABLE, INSERT, UPDATE, MERGE e i più comuni blocchi procedurali. Il codice procedurale specifico di un produttore, come batch T-SQL complessi con separatori GO o pacchetti PL/SQL, potrebbe non essere capito del tutto: scegli il dialetto giusto e formatta blocchi più piccoli se una parte dà errore.
Che cosa elimina la minificazione?
La minificazione elimina i commenti -- e /* */ (e quelli # in MySQL e MariaDB), riduce sequenze di spazi e a capo a un solo spazio e toglie gli spazi accanto a virgole e parentesi. Stringhe, identificatori tra virgolette e hint per l'ottimizzatore scritti come /*+ … */ o /*! … */ di MySQL restano, quindi la query minificata funziona esattamente come l'originale.