Anteprima
Vedrai una selezione di 1 pagina su 2
Informatica - l'odinamento di relazioni Pag. 1
1 su 2
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

6. Ordinamento di relazioni

6.1 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ì, ad esempio, se si chiede un ordinamento di un attributo contenente valori numerici in modo crescente,

verranno riportate perprime le tuple con gli scalari pari a NULL, poi i valori negativi, i valori uguali a zero e infine i datimaggiori di zero.

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;

Risultato:

CASA NOCASA
citroen 0
de tomaso 1
ferrari 2
fiat 3
tretre 46.2

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 *
FROM modelli
ORDER BY cil, lit DESC;
Il risultato corrispondente è il seguente: ```html

SELECT nome, cc, lit

FROM modello

ORDER BY cc, lit DESC;

[18]

```
Dettagli
Publisher
A.A. 2012-2013
2 pagine
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.