Come sappiamo, il linguaggio SQL ci permette di interrogare un database ricco di valori memorizzati al suo interno e tramite una SELECT ricevere alcuni di essi secondo le nostre esigenze. Ma come ci vengono restituiti questi dati?
Con l’istruzione SQL ORDER BY è possibile ordinare i risultati ricevuti in modo ascendente o discendente, vediamo come.
Quando si mostrano i risultati di una SELECT, molto spesso, si ricorre al loro ordinamento basato su dati presenti in uno o più campi. Esiste allo scopo la clausola ORDER BY che richiede solo l’indicazione delle colonne in base a cui ordinare i risultati della query.
Di default, i dati saranno ordinati in senso crescente ma applicando la parola chiave DESC si potrà avere un ordinamento decrescente.
Ecco alcuni esempi messi in pratica.
Immaginiamo di avere un database per un e-commerce e di voler richiedere l’ordinamento dei prodotti per prezzo crescente. Ecco cosa dovremmo digitare:
SELECT * FROM prodotti ORDER BY prezzo
Se invece volessimo vedere restituito l’ordinamento dei prodotti per prezzo ma in ordine decrescente, allora dovremmo scrivere:
SELECT * FROM prodotti ORDER BY prezzo DESC
A parità di prezzo potremmo però richiedere di ordinare i prodotti per categoria (supponiamo che questo dato venga restituito come numero intero):
SELECT * FROM prodotti ORDER BY prezzo, categoria
Come si può vedere nell’esempio, affinché il database ci restituisca tutti questi dati basterà semplicemente indicare i due campi di nostro interesse (e non uno soltanto) a seguito di ORDER BY (in questo caso prezzo e categoria).
Abbiamo visto quindi come ordinare i dati ricevuti da una query.
Se desideri scoprire altre istruzioni proprie del linguaggio SQL, ad esempio come escludere i valori ripetuti in una query o come contare il numero di elementi in una tabella, puoi seguire uno dei nostri corsi e imparare questo linguaggio sicuramente utile anche ad ogni programmatore.
Iscriviti su devACADEMY e SEGUI TUTTI I CORSI che vuoi!
OLTRE 70 CORSI di coding A TUA DISPOSIZIONE con un’unica iscrizione 🙂