5° Anno TEORIA 3. Un modello logico: il modello relazionale | Page 35

σ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 ) )
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