Come formattare query SQL

· 3 min di lettura

Un SQL disordinato è uno dei modi più rapidi per introdurre bug. Quando una query è su una sola lunga riga senza indentazione, è difficile vedere quali condizioni si applicano a quali join, dove iniziano e finiscono le sottoquery, o se la logica è corretta.

Perché la formattazione conta

Come formattare SQL

  1. Incolla il tuo SQL — inserisci una query minificata o disordinata nel formattatore. Gestisce SELECT, INSERT, UPDATE, DELETE, CREATE TABLE, così come query complesse con sottoquery e join.
  2. Configura le opzioni — scegli la dimensione di indentazione e se le parole chiave devono essere in maiuscolo. Queste impostazioni corrispondono alla guida di stile del tuo progetto.
  3. Copia il risultato — il SQL formattato è pronto per essere reincollato nel tuo editor, nel tuo client di database o nella tua documentazione.

Come appare una buona formattazione

Una query come select u.name, o.total from users u join orders o on u.id = o.user_id where o.total > 100 and u.active = 1 order by o.total desc diventa:

SELECT
  u.name,
  o.total
FROM users u
JOIN orders o
  ON u.id = o.user_id
WHERE o.total > 100
  AND u.active = 1
ORDER BY o.total DESC

Ogni clausola inizia sulla propria riga. Le condizioni sono indentate sotto la loro clausola padre. I join e le loro condizioni ON sono chiaramente abbinati.

Consigli

Domande frequenti

Bisogna scrivere le parole chiave SQL in maiuscolo?

È una convenzione ampiamente seguita scrivere le parole chiave SQL in maiuscolo (SELECT, FROM, WHERE) e i nomi di tabelle o colonne in minuscolo. Questo rende le query più facili da leggere visivamente. La maggior parte delle guide di stile lo raccomanda, ma nessun motore di database lo impone.

La formattazione cambia l'esecuzione della query?

No. Gli spazi e l'indentazione non hanno alcun effetto sull'esecuzione SQL. La formattazione è puramente per la leggibilità umana. Una query minificata e una indentata producono lo stesso risultato.

Quale dimensione di indentazione usare?

Due o quattro spazi sono entrambi comuni. Scegli ciò che il tuo team usa e resta coerente. La maggior parte dei formattatori SQL permette di configurarlo.

Il mio SQL viene inviato a un server?

No. La formattazione avviene interamente nel tuo browser. Le tue query non lasciano mai il tuo dispositivo.