Articolo originale: Ascending Order with SQL Order By
In questo articolo, ti mostrerò alcuni esempi di codice su come ordinare i tuoi dati in ordine ascendente usando la clausola SQL ORDER BY.
Sintassi di ORDER BY
Questa è la sintassi base per ordinare i tuoi dati in ordine ascendente:
SELECT colonne FROM tabella
ORDER BY colonna;Se vuoi un ordinamento discendente, devi usare la parola chiave DESC.
SELECT colonne FROM tabella
ORDER BY colonna DESC;L'istruzione SELECT in SQL consente di ottenere dati da una tabella.
La clausola FROM specifica da quale tabella vogliamo ottenere i dati da elencare.
In questo esempio, abbiamo una tabella di dati su dei musicisti con le colonne: id (identificativo), name (nome), age (età), instrument (strumento) e city (città):

Attualmente la tabella viene ordinata automaticamente in ordine di id ascendente.
Se volessimo ordinare i dati in modo ascendente per la colonna name, dovremmo usare questa sintassi:
SELECT * FROM musicians
ORDER BY name;Il carattere * consente di selezionare tutte le colonne della tabella.

Puoi vedere che ora i nomi sono ordinati alfabeticamente e l'id non è più nel corretto ordine ascendente.
Se volessimo ordinare i dati per città (city), dovremo utilizzare questa sintassi.
SELECT * FROM musicians
ORDER BY city;
Puoi anche ordinare più colonne in ordine ascendente con lo stesso comando.
In questo nuovo esempio, otteniamo un ordinamento ascendente per età (age) e città (city).
SELECT * FROM musicians
ORDER BY age, city;
Possiamo vedere che nella tabella ci sono tre musicisti diciannovenni con le loro rispettive città ordinate alfabeticamente. Anche i musicisti che hanno 38 anni hanno le loro città correttamente ordinate alfabeticamente.
Se avessimo voluto visualizzare una parte dei dati con ordinamento ascendente e un'altra parte con ordinamento discendente, avremmo dovuto usare le parole chiave ASC e DESC.
In questo nuovo esempio, vogliamo elencare i dati in ordine discendente per età (age ) e in ordine ascendente per strumento (instrument).
Ecco la sintassi:
SELECT * FROM musicians
ORDER BY age DESC, instrument ASC;Dobbiamo usare entrambe le parole chiave ASC e DESC accanto ai nomi di colonna per specificare come vogliamo ordinare i dati.
Il risultato è il seguente:

Possiamo vedere nella nostra tabella che sia Oscar che Jenny sono i più anziani. Oscar è il primo risultato in quanto il nome del suo strumento (drums) alfabeticamente viene prima del nome dello strumento di Jenny (trombone).
Osserviamo la stessa situazione con Jess e Dave. Anche se sono di pari età, Jess compare più in alto nella tabella in quanto flute precede alfabeticamente trumpet.
Conclusione
Puoi ordinare i dati di una tabella in ordine ascendente usando la clausola di SQL ORDER BY .
SELECT colonne FROM tabella
ORDER BY colonna;Se vuoi un ordinamento discendente dovrai usare la parola chiave DESC.
SELECT colonne FROM tabella
ORDER BY colonna DESC;Il carattere * indica che si vogliono selezionare tutte le colonne nella tabella.
SELECT * FROM tabella
ORDER BY colonna;Se vuoi un ordinamento discendente su colonne multiple dovrai elencare le colonne oggetto di ordinamento dopo la clausola ORDER BY.
SELECT * FROM tabella
ORDER BY colonna1, colonna2;Se vuoi una parte di dati in ordine ascendente e un'altra parte in ordine discendente dovrai usare le parole chiave ASC e DESC.
SELECT * FROM tabella
ORDER BY colonna1 ASC, colonna2 DESC;Ecco come usare la clausola ORDER BY in SQL per ordinare i dati.