Ordinare i risultati di una query con ORDER BY Stampa


mysqlQuando realiziamo una query su un database, mysql in questo caso, possiamo avere bisogno di ordinare i risultati appena ottenuti. Per fare questo in mysql è presente la clausola ORDER BY che permette di definire i criteri secondo i quali i risultati devono essere ordinati.

Ecco un esempio di come può essere usato ORDER BY:

#ordinare in modo crescente
SELECT nome FROM tabella WHERE anno='1983' ORDER BY nome ASC

In questo esempio abbiamo estratto tutti i nomi delle persone nate nel 1983 e li abbiamo ordinati in ordine crescente (ascendente o ASC), ovvero dal minore al maggiore. Il contrario di ASC è DESC ovvero decrescente che serve per effettuare ordinamenti dal valore maggiore a quello minore, può essere usato così:

#ordinare in modo decrescente
SELECT nome FROM tabella WHERE anno='1983' ORDER BY nome DESC

E’ anche possibile eseguire ordinamenti basati su più criteri allo stesso tempo:

#ordinare secondo più indici
SELECT nome, cognome FROM tabella WHERE anno='1983' ORDER BY cognome ASC, nome ASC

Prima di tutto questa query serve a ottenere i nomi e i cognomi di tutte le persone nate nel 1983.
In seconda battuta l’ordinamento, questo viene eseguito prima in modo crescente sui cognomi e successivamente sui nomi sempre in modo crescente.  Ovvero a parità di cognome viene eseguito un ordinamento dei nomi per ottenere un risultato del genere:

Bianchi   Luca
Casiraghi   Marco
Casiraghi   Piero
Corti   Alberto
Rossi   Nicola

Spero che questo articolo serva da infarinatura per capire come possono essere ordinati i risultati di una query mysql.

Link utili:



Nessun commento.

Scrivi un commento: