Estratto del documento

Ordinamento di relazioni

Forma generale

La forma generale di una SELECT che deve ordinare uno o più attributi prima di restituire la relazione risultato è data da:

SELECT . . . . FROM . . . . .
ORDER BY nome_col1 [DESC] [,nome_col2, . . .];

Come si vede dalla forma generale, di seguito alla parola ORDER BY, possono essere specificate una o più colonne su cui effettuare l'ordinamento. Il criterio di ordinamento è crescente ma è possibile modificarlo con la specificazione della clausola DESC.

Prima di passare agli esempi, una precisazione. Abbiamo visto che alcune tuple possono presentarsi con alcuni valori nulli. Si tenga presente che, in caso di ordinamento, verranno riportate per prime le tuple contenenti i valori nulli (ovviamente nelle colonne specificate dopo ORDER BY), poi, a seconda del criterio di ordinamento, tutti gli altri valori. Così, se per esempio, si chiede un ordinamento di un attributo contenente valori numerici in modo crescente, verranno riportate per prime le tuple con gli scalari pari a NULL, poi i valori negativi, i valori uguali a zero e infine i dati maggiori di zero.

Esempio di ordinamento semplice

La prima query restituisce i nomi e i codici delle case costruttrici, ordinati alfabeticamente secondo il nome della casa. Il suo testo ed il risultato ottenuto, sono riportati di seguito.

SELECT casa, nocasa
FROM marche
ORDER BY casa; [17]
CASA NOCASA
citroen 0
de tomaso 1
ferrari 2
fiat 3
tretre 4

Gli ordinamenti multipli

La seconda query costituisce un esempio relativo all'ordinamento su due attributi: sul primo attributo l'ordinamento è quello normale, mentre per il secondo l'ordinamento è decrescente. Si nota infatti come, nel caso di modelli con la stessa cilindrata (questo è il caso dei tre modelli cx e dei due modelli della ferrari), le tuple sono disposte secondo l'ordine decrescente del prezzo (grazie alla specificazione della clausola DESC di seguito all'attributo LIT).

SELECT nome, cc, lit
FROM modello
ORDER BY cc, lit DESC; [18]
Anteprima
Vedrai una selezione di 1 pagina su 2
Informatica - l'odinamento di relazioni Pag. 1
1 su 2
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher valeria0186 di informazioni apprese con la frequenza delle lezioni di Informatica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Roma La Sapienza o del prof Grande Antonio.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community