La specifica ORDER BY in SQL
Nel linguaggio SQL posso ordinare i dati in uscita dall'interrogazione SELECT aggiungendo la clausola ORDER BY.
ORDER BY attributo [ASC|DESC]
La clausola ORDER BY compie un ordinamento crescente ( ASC ) o decrescente ( DESC ) delle righe della tabella in base al valore contenuto nell'attributo.
E' anche possibile aggiungere due o più attributi di ordinamento, separandoli tra loro da una virgola.
ORDER BY attr1 ASC, attr2 DESC
A parità di valori del primo attributo (attr1), i dati sono ordinati in base al secondo attributo (attr2).
Nota. L'ordinamento di ORDER BY non modifica i dati fisici o logici della tabella perché agisce soltanto sulla visualizzazione dei risultati della query.
Un esempio pratico
Riprendendo la tabella 'alunni' per visualizzare tutti gli studenti ordinati per età utilizzo la clausola ORDER BY / ASC
SELECT *
FROM alunni
ORDER BY eta ASC
Per visualizzare la lista in ordine discendente d'età, invece, utilizzo la clausola ORDER BY / DESC
SELECT *
FROM alunni
ORDER BY eta DESC
Per visualizzare gli studenti ordinati per età e per nome scrivo entrambi gli attributi
SELECT *
FROM alunni
ORDER BY eta DESC, nome ASC
E così via.