![]() |
![]() Sincronizza Indice |
![]() Scarica il progetto |
![]() Testo dell'articolo |
![]() Stampa l'articolo |
Uno tra i più semplici operatori del linguaggio SQL, ORDER BY consente di ordinare i risultati secondo certi criteri. La sua sintassi generale è:
ORDER BY <campo> [ ASC | DESC ] Si applica generalmente alle selezioni, per ottenere un elenco di righe già ordinato per ciascuno dei campi indicati. L'ordinamento è possibile sia in maniera ascendente (ASC), cioè dalla A alla Z, che rappresenta il valore di default, se omesso, che in maniera discendente (DESC) che rappresenta l'ordine contrario, cioè da Z verso A.
L'utilizzo dell'operatore ORDER BY è molto semplice: SELECT * FROM dipendenti ORDER BY id Ordinerà le righe restituite in ordine crescente (ascendente) del campo ID. SELECT nome, cognome FROM dipendenti ORDER BY nome Tutti i nomi saranno ordinati in maniera ascendente, mentre i cognomi saranno lasciati nel loro ordine casuale. È possibile ordinare i risultati anche per più campi, al fine di ottenere un insieme di righe correttamente ordinato. SELECT nome, cognome FROM dipendenti ORDER BY nome, cognome Istruzione assolutamente equivalente a: SELECT nome, cognome FROM dipendenti ORDER BY nome ASC, cognome ASC
In quanto, come già detto, il criterio di ordinamento predefinito è quello ascendente. È però possibile invertire l'ordine di uno o di entrambi i campi: SELECT nome, cognome FROM dipendenti ORDER BY nome ASC, cognome DESC Riporterà i campi nome e cognome di tutte le righe della tabella dipendenti, ordinate per nome (dalla A alla Z) e quindi per ordine inverso di cognome (dalla Z alla A). Nei casi di omonimia fra due campi di due tabelle, in maniera analoga a quanto visto in precedenza, è possibile specificare il nome della tabella a cui il campo da ordinare appartiene, come segue: SELECT dip.id, dip.nome, dip.cognome, saldi.totale Estrarrà ID, Nome, Cognome e Totale di tutte quelle persone che compaiono sia nella tabella dipendenti che in quella dei saldi; il risultato verrà ordinato in maniera decrescente per totale del saldo (dal maggiore al minore) e quindi per ID in ordine crescente. Se due nominativi presentano lo stesso totale, saranno a loro volta ordinati per ID.
I valori Null nell'ordinamento sono considerati come il valore più basso, cioè in caso di ordinamento ascendente sono presentati per primi, mentre in caso di ordinamento discendente sono ordinati per ultimi.
|
Fibia
FBI
|
![]() |