Gli argomenti di Select
La forma generale del comando SELECT è data da:
SELECT [DISTINCT] { * | nome_col1, nome_col2,...} FROM nome_tab1;
Il comando SELECT viene utilizzato per eseguire una interrogazione o query in una relazione o tabella di una base di dati. La sua funzione, oltre quella di comando necessario per l'interrogazione, è anche di specificare la lista dei valori che estratti dalla tabella o dalle tabelle di cui disponiamo, specificate di seguito FROM, dovranno comparire nella relazione risultato.
La prima osservazione riguarda la differenza, nella parola FROM, tra quanto specificato nella forma generale riportata nel capitolo precedente e quella che abbiamo appena considerato. Avvertiamo che questo è stato fatto perché l'inserimento di più di una relazione, di seguito a questa parola, è un argomento che verrà trattato in uno dei prossimi capitoli ("La join di tabelle"). Per ora esamineremo l'uso di SELECT nella sua forma più semplice che è quella appena vista.
Gli argomenti specificati di seguito alla parola chiave SELECT, possono essere costituiti da uno o dalla combinazione di uno dei seguenti:
- Attributi
- Espressioni
- Funzioni
- Costanti racchiuse tra doppio apice
Tutti questi valori devono provenire dalla relazione specificata di seguito alla parola chiave FROM.
La lista di tutti gli attributi
La presenza del carattere "*" di seguito alla parola chiave SELECT, è mutuamente esclusiva rispetto alla specificazione di una qualsiasi delle quantità appena elencate. In particolare, il carattere asterisco, equivale a "tutte le colonne della relazione" secondo l'ordine in cui gli attributi si trovano all'interno della tabella. Perciò, per esempio, la query [1] equivale a quanto scritto nella [2]. Come faremo quasi sempre nel seguito, dopo il testo della query, riportiamo il risultato che si ottiene con i dati delle relazioni corrispondenti.
SELECT * FROM modello; [1]
SELECT nome, cc, a120kmh, urb, lit, ggc, nocasa, uso [2] FROM modello;
| NOME | CC | A12OKMH | URB | LIT | GGC | NOCASA | USO |
|---|---|---|---|---|---|---|---|
| 126 | 652 | 6.8 | 5650 | 0 | 3 | utili | |
| panda 750 l | 769 | 6.2 | 7414 | 0 | 3 | utili | |
| cx 25 gti turbo | 2500 | 8.9 | 41052 | 0 | sport | ||
| croma td | 2445 | 6.3 | 8.4 | 25250 | 60 | 3 | lusso |
12 records selected.
Notiamo, al termine della relazione risultato, l'aggiunta di una riga che riporta il numero delle tuple che la compongono. Avvertiamo che questo avviene in SQL Oracle e che, da ora in poi, questa informazione non sarà inclusa. Ancora, si nota che gli allineamenti dei dati nelle colonne corrispondenti, seguono la...