15 . Il modello relazionale Vers . 6.2 – Gennaio 2023
Q4 : Prelevare dalla base i clienti che si chiamano Mario Neri e sono di Napoli In questo caso avendo
R = Cliente e P = {( Nominativo = " Neri Mario ") AND ( Provincia = " Napoli ")} verrà prelevata solo una ennupla che verifica il predicato P
σP ( R ) CodCliente Nominativo Indirizzo Provincia C001 Neri Mario Via Po , 5 Napoli
Grado ( σP ( Cliente )) = 4 ( ossia pari al numero di attributi della relazione Cliente ) Card ( σP ( Cliente )) = 1 ( comunque sicuramente ≤ Card ( Cliente ) )
!!! ATTENZIONE !!!
Le query proposte fino a questo momento sono state risolte utilizzando di volta in volta UN SOLO OPERATORE dell ' algebra relazionale . Questa è un ' evenienza sicuramente possibile . In GENERALE però una query può richiedere per la sua risoluzione l ' utilizzo di PIU ' DI UN ' OPERATORE DELL ' ALGEBRA RELAZIONALE . In questo caso per ottenere la TABELLA " risultato " dovremo " svolgere " l ' ESPRESSIONE relazionale progettata applicando uno dopo l ' altro gli operatori relazionali indicati , in modo del tutto analogo al concetto matematico di " funzione composta " ( ossia procedendo dall ' operatore più " interno " verso l ' operatore più " esterno " rispettando eventuali parentesi tonde )
Esempio : Sia data la STESSA relazione Cliente definita in precedenza utilizzando la rappresentazione tabellare :
R = Cliente
R |
CodCliente |
Nominativo |
Indirizzo |
Provincia |
|
C001 |
Neri Mario |
Via Po , 5 |
Napoli |
|
|
Bianchi Gianni |
Via Lima , 7 |
Milano |
|
C003 |
Rossi Antonio |
Via Riga , 9 |
Napoli |
e supponiamo si vogliano effettuare le seguenti query o interrogazioni : |
Q5 : Prelevare i nominativi dei clienti di Napoli
Grado ( R ) = 4 Card ( R ) = 3
Innanzitutto devo effettuare un ' attenta lettura della traccia proposta rispondendo alle seguenti domande in grado di aiutarmi nel formulare la soluzione :
1 ) Quali sono gli attributi " citati " o " sottintesi " nel testo della query ed a quali relazioni appartengono ?
Sono gli attributi " Nominativo " e " Provincia " entrambi appartenenti alla relazione " Cliente ".
2 ) Quali sono gli attributi i cui valori si vogliono ottenere come " output " ( visualizzazione ) della query ed a quali relazioni appartengono ?
E ' l ' attributo " Nominativo " della relazione " Cliente "…… quindi A = { Nominativo }
3 ) Quali sono gli attributi sui cui valori si richiede la verifica di un determinato predicato ed a quali relazioni appartengono ? Qual è questo predicato ?
E ' l ' attributo " Provincia " della relazione " Cliente " e quindi P = { Provincia = " Napoli "}
Autore : Rio Chierego ( email : riochierego @ libero . it - sito web : www . riochierego . it ) Pag . 35