Formattatore SQL

Trasforma un muro di SQL in qualcosa di leggibile — e rimettilo su una riga sola quando serve.

100% privato — funziona interamente nel tuo browser. I tuoi dati vengono elaborati sul tuo dispositivo e non vengono mai inviati a Internet.

                        
Scarica .sql

Formatta mentre scrivi — non c'è nulla da premere. La tua query resta in questa pagina, dentro stringhe e commenti non si guarda mai, e gli identificatori mantengono esattamente le maiuscole che hai scritto.

Formattare SQL

L'SQL arriva come un'unica riga enorme. Dal log di un ORM, da una segnalazione di bug, dagli appunti di qualcuno. Funziona benissimo ed è impossibile da leggere, e il pezzo che cerchi sta da qualche parte in mezzo.

Incollalo e torna impaginato: una clausola per riga, le colonne indentate sotto SELECT, le join e le loro condizioni ON allineate, così la forma della query si vede a colpo d'occhio.

Come si usa

  • Incolla il tuo SQL nel riquadro a sinistra — la versione formattata e colorata compare a destra mentre scrivi
  • Regola l'indentazione, le maiuscole delle parole chiave e la posizione delle virgole se vuoi: il risultato si aggiorna subito
  • Copialo, oppure scaricalo come file .sql
  • Passa a Minifica per rimetterlo su una riga; quella modalità resta mentre continui a scrivere

Non c'è un pulsante da premere per formattare. Gli unici due pulsanti che cambiano il risultato

sono Formatta e Minifica, e scelgono quale dei due stai guardando.

Il colore nasce dalla stessa lettura della query

L'output viene colorato ripassando sul testo finito lo stesso tokenizzatore che l'ha

impaginato: parole chiave in ciano, stringhe in giallo, numeri in arancione, commenti in

grigio, punteggiatura in rosa, e i tuoi nomi di tabelle e colonne lasciati semplici, così da

staccarsi dall'SQL intorno.

Conta per più dell'aspetto. Poiché un'unica lettura della query produce sia l'impaginazione sia

il colore, i due non possono mai contraddirsi: ciò che è dipinto come stringa è esattamente ciò

che il formattatore ha trattato come stringa. Se da qualche parte un apice non è chiuso, il

colore prosegue e ti mostra dove — di solito più in fretta di quanto lo troveresti a occhio.

Copia e Scarica consegnano il testo semplice, mai il markup colorato.

Due cose su cui sta attento

La maggior parte dei formattatori SQL veloci lavora con espressioni regolari, e questi due punti sono proprio dove quell'approccio si sfascia.

  • Dentro stringhe e commenti non si guarda mai. Una query che contiene WHERE note = 'from a, b' ha una parola chiave, una virgola e uno spazio dentro una stringa letterale. Un formattatore a regex spezza lì la riga e cambia ciò che la query fa. Questo legge prima la query in token, così l'interno di un letterale esce esattamente com'era entrato — spaziatura compresa
  • Gli identificatori mantengono le maiuscole che hai scritto. Solo le parole chiave vengono rese maiuscole o minuscole. Su un server che distingue maiuscole e minuscole userId e userid sono colonne diverse, e un formattatore che le «mette in ordine» ha rotto la query per farla sembrare più pulita

Tutti gli stili di quoting sono compresi: 'stringhe' con escape '', "identificatori tra virgolette", backtick MySQL, [parentesi quadre] SQL Server e $$ dollar quoting $$ PostgreSQL.

Le opzioni

  • Indenta con — 4 spazi, 2 spazi o una tabulazione
  • Parole chiave — MAIUSCOLO, minuscolo, o esattamente come le hai scritte
  • Virgole — a fine riga, oppure in testa a inizio riga, se è lo stile della tua squadra

Minifica

Minifica riporta la query su una riga sola. Uno spazio resta solo dove toglierlo cambierebbe il significato o creerebbe un nuovo token, quindi il risultato è il più corto possibile in sicurezza.

I commenti di riga vengono eliminati, perché -- come questo inghiottirebbe il resto della riga una volta che tutto sta su una riga. I commenti a blocco restano, esattamente come sono scritti.

A cosa serve

  • Rendere leggibile una query uscita da un log di ORM
  • Ripulire l'SQL prima di metterlo in una pull request o in una migrazione
  • Capire una query lunga scritta da qualcun altro
  • Tirare fuori una query da una segnalazione di bug in una forma su cui lavorare
  • Far stare una query su una riga per un file di configurazione o un comando di shell
  • Uniformare lo stile di una cartella di file .sql prima di committarli

Buono a sapersi

  • La tua query resta in questa pagina — non viene inviata da nessuna parte. Comodo quando contiene nomi veri di tabelle e colonne
  • Questo impagina l'SQL; non verifica che sia valido. Una query con un errore di sintassi viene formattata al meglio possibile, non rifiutata
  • Il quoting specifico dei dialetti è supportato, ma non viene riscritto da un dialetto all'altro
  • Le query molto grandi non sono un problema — è un lavoro semplice sulla tua macchina
  • Funziona in ogni browser, anche su telefono

Strumenti correlati

Aggiungiamo regolarmente nuovi strumenti — iscriviti su YouTube per ricevere una notifica a ogni novità.

Altri strumenti

Vedi tutti

App consigliate

Vedi tutti