SQL per principianti: SELECT, WHERE e ORDER BY
📅 6 giugno 2026 — di Alessandro Simone
Imparare SQL significa imparare a "parlare" con un database. SQL (Structured Query Language) è il linguaggio con cui chiediamo informazioni a una base di dati, e le tre parole chiave da cui partire sono SELECT, WHERE e ORDER BY. In questa guida le vediamo una per una, con esempi semplici che potrai riprodurre a scuola o a casa.
Il database di esempio
Immaginiamo una tabella chiamata studenti con queste colonne: id, nome, cognome, eta e media. Una tabella è come un foglio Excel: ogni riga è uno studente, ogni colonna un'informazione. Tutte le nostre query lavoreranno su questa tabella.
SELECT: scegliere cosa vedere
Il comando SELECT serve a estrarre dati. La forma più semplice mostra tutte le colonne di tutte le righe:
SELECT * FROM studenti;
L'asterisco * significa "tutte le colonne". Ma spesso vogliamo solo alcune informazioni, ad esempio nome e cognome:
SELECT nome, cognome FROM studenti;
Indicando i nomi delle colonne otteniamo un risultato più pulito e leggibile. Già con questo comando puoi interrogare qualsiasi tabella.
WHERE: filtrare i risultati
Quasi mai vogliamo tutte le righe. La clausola WHERE ci permette di mettere una condizione e ottenere solo le righe che la rispettano:
SELECT nome, cognome
FROM studenti
WHERE eta > 18;
Questa query restituisce solo gli studenti maggiorenni. Possiamo usare diversi operatori di confronto:
=uguale a (es.WHERE nome = 'Mario')>e<maggiore e minore>=e<=maggiore o uguale, minore o uguale<>diverso da
Nota importante: i testi vanno tra apici singoli ('Mario'), mentre i numeri si scrivono senza apici. È un dettaglio che fa sbagliare tanti studenti.
Combinare più condizioni: AND e OR
Possiamo unire più condizioni con AND (entrambe vere) e OR (almeno una vera):
SELECT nome, cognome
FROM studenti
WHERE eta >= 18 AND media >= 8;
Questa query trova gli studenti maggiorenni e con media alta. Cambiando AND in OR otterremmo gli studenti che soddisfano almeno una delle due condizioni.
ORDER BY: ordinare i risultati
Infine, ORDER BY serve a ordinare il risultato secondo una colonna:
SELECT nome, cognome, media
FROM studenti
ORDER BY media DESC;
Con DESC (descending) ordiniamo dal valore più alto al più basso — perfetto per una classifica dei voti. Usando ASC (ascending), o semplicemente nulla, l'ordine è crescente.
Mettiamo tutto insieme
Le tre clausole si combinano sempre nello stesso ordine: prima SELECT, poi WHERE, infine ORDER BY:
SELECT nome, cognome, media
FROM studenti
WHERE eta >= 18
ORDER BY media DESC;
Questa query risponde a una domanda concreta: "Mostrami nome, cognome e media degli studenti maggiorenni, ordinati dal più bravo." Con sole quattro righe abbiamo interrogato un intero archivio.
Errori comuni con SQL
- Dimenticare il punto e virgola alla fine: molti sistemi lo richiedono per eseguire la query.
- Mettere i numeri tra apici o, al contrario, dimenticare gli apici sui testi.
- Invertire l'ordine delle clausole: WHERE va sempre prima di ORDER BY.
In sintesi
Con SELECT scegli le colonne, con WHERE filtri le righe e con ORDER BY ordini il risultato. Sono le fondamenta di SQL: una volta padroneggiate queste tre clausole, sarai pronto per argomenti più avanzati come le funzioni di aggregazione (COUNT, GROUP BY) e le JOIN tra tabelle. Il segreto, come sempre, è esercitarsi tanto.
