Formatatore SQL e Minificatore – Documentazione completa, migliori pratiche e integrazioni

Avatar
Manuel Schulz · 18.10.2025 · Sviluppo · 20–25 minuti

Il formatatore e minificatore Zerlo SQL rende SQL immediatamente leggibile (Beautify) o compatto (Minify). Controlli Indentazione (2/4/8 spazi), Caso parole chiave (UPPER/lower/Preserve) e nell'area Avanzate Rimozione commenti nonché forzare il punto e virgola. Attraverso Accesso rapido sono disponibili snippet di esempio, e con Auto-test controllerai il comportamento in pochi secondi. La pagina è raggiungibile qui: zerlo.net/formattersql.

Contenuto

  1. Avvio rapido
  2. Panoramica delle funzioni
  3. Esempi di accesso rapido (Use-Cases)
  4. Opzioni avanzate (Dettagli e insidie)
  5. Categorie di applicazione tipiche (12 scenari)
  6. Integrazione: sito web, iFrame, Teams
  7. API JSON opzionale (con esempi)
  8. Auto-test (passo dopo passo)
  9. Consigli da professionisti, prestazioni e sicurezza
  10. Indicazioni sui dialetti e sui limiti
  11. Risoluzione dei problemi e FAQ
  12. Provalo ora

1) Avvio rapido

  1. Apri zerlo.net/formattersql.
  2. Incolla qui il tuo SQL a sinistra o digitalo.
  3. Seleziona il Modalità: Formattare (leggibile) o Minificare (compatto).
  4. Imposta Indentazione (2/4/8) e Caso parole chiave (UPPER/lower/Preserve) attiva..
  5. Opzionale: Rimuovere commenti, Forzare il punto e virgola.
  6. Fai clic Formattare – – il risultato appare sul lato destro, inclusi. Copia e Salva come .sql.
  7. Sotto Auto-test puoi testare automaticamente le regole principali..

2) Funzioni in sintesi

3) Esempi di accesso rapido (Use-Cases)

Questi esempi coprono i modelli più comuni e sono ideali come punto di partenza.

1_einfaches_select.sql
SELECT id, name FROM products WHERE status = 'active';
2_join_mit_aggregat.sql
SELECT c.id, c.title, COUNT(p.id) AS products
FROM categories c
LEFT JOIN products p ON p.category_id = c.id
GROUP BY c.id, c.title
ORDER BY products DESC;
3_case_plus_subquery.sql
SELECT u.id, u.email,
  CASE
WHEN o.total >= 1000 THEN 'gold'
WHEN o.total >= 200  THEN 'silver'
ELSE 'bronze'
  END AS tier
FROM users u
LEFT JOIN LATERAL (
  SELECT SUM(total) AS total
  FROM orders
  WHERE user_id = u.id
) o ON TRUE;
4_cte_plus_window.sql
WITH ranked AS (
  SELECT id, customer_id, total,
ROW_NUMBER() OVER (PARTITION BY customer_id ORDER BY total DESC) AS rn
  FROM orders
)
SELECT * FROM ranked WHERE rn = 1;
5_insert_returning.sql
INSERT INTO users(email, role)
VALUES ('[email protected]', 'editor')
RETURNING id, email;
6_update_mit_case.sql
UPDATE accounts
SET status = CASE
  WHEN balance < 0 THEN 'overdue'
  WHEN balance = 0 THEN 'zero'
  ELSE 'ok'
END
WHERE active = 1;
7_delete_plus_exists.sql
DELETE FROM sessions s
WHERE EXISTS (
  SELECT 1 FROM users u
  WHERE u.id = s.user_id AND u.deleted_at IS NOT NULL
);

4) Opzioni avanzate (Dettagli e insidie)

5) Categorie di applicazione tipiche (12 scenari)

  1. Code-Review:: Un layout uniforme accelera le revisioni e previene discussioni sullo stile.
  2. Debugging:: JOIN complesse e CASE diventano immediatamente visibili.
  3. Condivisione delle conoscenze:: SQL leggibile per Wiki/Confluence/README.
  4. Migrazioni e script:: Sicurezza del punto e virgola, blocchi univoci.
  5. Integrazione API:: Minify + rimozione dei commenti, per incorporare SQL in app/servizi.
  6. BI/Reporting:: Pulire le query da strumenti BI prima di condividerle.
  7. Apprendimento e formazione:: CTE e funzioni Window in modo strutturato.
  8. Refactoring:: Prima la formattazione (Beautify), poi isolare/ottimizzare le sottosezioni..
  9. Riproduzione di errori:: Query strutturate chiaramente per ticket di supporto.
  10. Applicazione della guida di stile:: Applicare coerentemente lo standard del team (Indent/Case)..
  11. Modelli:: „Accesso rapido“ come base per nuove query.
  12. Preparazione al rilascio:: Minify per artefatti stabili e trasportabili..

6) Integrazione in sito web/Teams

A) Utilizzo diretto

Qui va lo strumento: zerlo.net/formattersql

B) Incorporazione iFrame (Intranet/Backoffice)

embed_iframe.html
<iframe src="https://zerlo.net/formattersql" title="SQL Formatter" width="100%" height="900" style="border:0; border-radius:12px;"></iframe>

C) Guida allo stile del team (base)

7) API JSON opzionale

Puoi automatizzare la formattazione in strumenti/CI/CD. Un esempio essenziale:

api_request.http
POST https://zerlo.net/formattersql?api=1
Content-Type: application/json

{
  "sql": "select id,name from users where id=1",
  "mode": "beautify",
  "options": { "indent": 4, "keywordCase": "upper", "stripComments": false, "ensureSemicolon": true }
}
api_response.json
{
  "ok": true,
  "result": "SELECT id, name\nFROM users\nWHERE id = 1;",
  "stats": { "ms": 4, "inLen": 43, "outLen": 47 }
}
api_node.js
// Node.js (fetch)
const res = await fetch("https://zerlo.net/formattersql?api=1", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
sql: "SELECT * FROM orders WHERE created_at >= NOW() - INTERVAL '7 days';",
mode: "beautify",
options: { indent: 2, keywordCase: "upper", stripComments: true, ensureSemicolon: true }
  })
});
const data = await res.json();
console.log(data.result);
api_php.php
<?php
// PHP
$payload = [
  "sql" => "SELECT COUNT(*) FROM products;",
  "mode" => "minify",
  "options" => [ "indent" => 2, "keywordCase" => "preserve", "stripComments" => true, "ensureSemicolon" => true ]
];
$ch = curl_init("https://zerlo.net/formattersql?api=1");
curl_setopt_array($ch, [
  CURLOPT_POST => true,
  CURLOPT_HTTPHEADER => ["Content-Type: application/json"],
  CURLOPT_POSTFIELDS => json_encode($payload),
  CURLOPT_RETURNTRANSFER => true
]);
$resp = curl_exec($ch);
curl_close($ch);
echo $resp;

8) Auto-test (passo-passo)

  1. Clicca nello strumento qui sotto su Auto-test – – vengono controllati automaticamente tre casi principali..
  2. Caso Beautify:: Keywords UPPER, Parole chiave UPPER, interruzioni chiare, indent pulito.
  3. Caso Minify:: Commenti rimossi (se l'opzione è attiva), output compatto.
  4. Caso Indent:: Cambio visibile tra 2/4/8 spazi..
  5. Il risultato appare nel pannello Auto-test; in caso di deviazioni: controllare le opzioni e, se necessario, cambiare modalità.

9) Consigli da professionisti, prestazioni e sicurezza

10) Indicazioni sui dialetti e limiti

11) Risoluzione dei problemi e FAQ

„Non cambia nulla?“ – Verifica le modalità e le opzioni; l'input non deve essere vuoto.

„Doppio punto e virgola?“ – Opzione 'forzare' + presenza di ;: disattivare l'opzione.

„Commenti non rimossi“ – Attiva la rimozione dei commenti o imposta la modalità su 'Minify'.

„Query molto lunghe causano lag nel browser“ – Formattare blocchi di grandi dimensioni una volta alla volta o utilizzare l'API.

„Parole chiave modificate nelle stringhe?“ – Non dovrebbe accadere; verifica se erano effettive stringhe (stringhe tra virgolette, niente backticks).

12) Ora prova

Inizia qui: zerlo.net/formattersql

Hai trovato utile questa guida? Condividila volentieri: