Formattatore SQL
SQL Formatter
Formatta l’SQL con maiuscole delle parole chiave, indentazione e posizione delle virgole configurabili, nei dialetti principali.
Dispone una query SQL perché la si possa leggere: parole chiave allineate, clausole ciascuna sulla propria riga, join indentati sotto la tabella a cui si agganciano. Conosce cinque dialetti, perché la differenza fra loro sta soprattutto in come si quotano stringhe, identificatori e commenti, e sbagliarlo è il modo in cui un formattatore rovina una query.
Virgolette ANSI: identificatori fra virgolette doppie, e un apice dentro una stringa scritto due volte.
SQL in ingresso
Trascina un file .sql
Letto in questa scheda. Non viene caricato niente.
Formattato
Ingresso
253 byte
Uscita
0 byte
Istruzioni
0
Token conservati
sì
Questo dispone l’SQL, non lo convalida. Una query a cui manca il FROM verrà formattata per bene e il database la rifiuterà lo stesso.
Come si usa
Scegliere prima il proprio dialetto
I backtick di MySQL, il dollar quoting di PostgreSQL, le parentesi quadre di SQL Server: ognuno cambia che cosa conta come identificatore e che cosa conta come stringa. Standard è la lettura ANSI ed è quella giusta per tutto ciò che deve essere portabile.
Impostare lo stile della casa
Maiuscole o minuscole nelle parole chiave, larghezza dell’indentazione, virgole all’inizio o alla fine, e la larghezza a cui una lista di select va a capo. Le virgole iniziali sembrano strane finché non si è fatto un git blame su una lista di colonne.
Controllare «token conservati»
Dopo ogni esecuzione l’uscita viene ritokenizzata e confrontata con l’input. Se dice di no, il formattatore ha letto male qualcosa — quasi sempre un dialetto sbagliato — e conviene usare il proprio input, non la sua uscita.
Domande frequenti
Convalida la mia query?
No. Dispone lo SQL; non conosce lo schema e non analizza il significato. Una query a cui manca la clausola `FROM` verrà formattata ordinatamente e rifiutata dal database esattamente come prima.
Perché i miei commenti `--` sono diventati `/* */`?
Solo quando si minifica. Un commento `--` arriva fino alla fine della sua riga, quindi mettere la query su una riga sola commenterebbe tutto quello che segue. La pagina conta quanti ne ha convertiti, così il cambiamento non è silenzioso.
Che cosa vuol dire qui «stringa non terminata»?
Una virgoletta che non si chiude mai, di solito perché il dialetto è sbagliato: un backtick in modalità Standard, o un blocco `$$` in modalità MySQL. Tutto quello che segue viene letto come parte di quella stringa, ed è per questo che il resto dell’uscita sembra scombinato.
Si può incollare un intero file di migrazione?
Sì: gli statement vengono divisi sui punti e virgola e ne viene mostrato il numero. La formattazione gira in un worker, quindi un file grande non blocca la pagina, anche se uno molto lungo ci mette un attimo.
Può ricevere da
Escape di stringhe
String Escaper
Applica e toglie l’escape delle stringhe secondo le regole di JSON, JavaScript, SQL, shell, CSV ed espressioni regolari.
Da CSV a SQL
CSV to SQL
Genera da una tabella le istruzioni CREATE TABLE e INSERT, con i tipi dedotti e il dialetto che scegli.
Formattatore e validatore JSON
JSON Formatter & Validator
Formatta, minifica e valida il JSON, indicando riga e colonna esatte di un errore di sintassi.
Formattatore e validatore YAML
YAML Formatter & Validator
Riporta il YAML a un’indentazione coerente, lo valida e segnala gli errori di tabulazione e di ancora che rompono i parser.
Dopo
Questi accettano ciò che produce questo strumento, così il risultato può passare direttamente.
SQL su file CSV
SQL over CSV
Esegue SQL sui file CSV o TSV che trascini dentro — SELECT, WHERE, GROUP BY/HAVING, ORDER BY, LIMIT, CASE e una JOIN fra due tabelle — con la grammatica scritta nella pagina.
Da CSV a SQL
CSV to SQL
Genera da una tabella le istruzioni CREATE TABLE e INSERT, con i tipi dedotti e il dialetto che scegli.
Riformattare un elenco
List Formatter
Trasforma delle righe in una lista separata da virgole, in una clausola SQL IN con gli apici, in un array JSON o in un elenco puntato, e viceversa.
Escape di stringhe
String Escaper
Applica e toglie l’escape delle stringhe secondo le regole di JSON, JavaScript, SQL, shell, CSV ed espressioni regolari.
Codificatore e decodificatore Base64
Base64 Encoder & Decoder
Codifica e decodifica in Base64 e Base64URL testo o file, trattando correttamente l’UTF-8.
Da curl a codice
curl to Code
Converte un comando curl in fetch, axios, requests di Python, Go, PHP o PowerShell.