15 . Il modello relazionale Vers . 6.2 – Gennaio 2023
a ) prima di tutto dobbiamo eseguire il prodotto cartesiano delle relazioni Studente e Scuola :
Matricola Cognome Nome
M001 |
Rossi |
Paolo |
M001 |
Rossi |
Paolo |
M002 |
Bianchi |
Aldo |
M002 |
Bianchi |
Aldo |
M003 |
Verdi |
Ada |
M003 |
Verdi |
Ada |
M004 |
Neri |
Maria |
M004 |
Neri |
Maria |
CodScuola1 NATF091011 NATF091011 NATF091011 NATF091011 NAXX123456 NAXX123456 NAXX123456 NAXX123456
CodScuola NATF091011 NAXX123456 NATF091011 NAXX123456 NATF091011 NAXX123456 NATF091011 NAXX123456
NomeScuola ISIS G . Tassinari ITIS A . Volta ISIS G . Tassinari ITIS A . Volta ISIS G . Tassinari ITIS A . Volta ISIS G . Tassinari ITIS A . Volta
b ) poi sulla relazione Studente X Scuola così ottenuta , dobbiamo eseguire una selezione ponendo la condizione di equi-join Studente . CodScuola1 = Scuola . CodScuola .
Avremo come risultato la seguente relazione T1
Indirizzo Via Fasano , 78 Via Roma , 144 Via Fasano , 78 Via Roma , 144 Via Fasano , 78 Via Roma , 144 Via Fasano , 78 Via Roma , 144
T1 Matricola Cognome Nome |
CodScuola1 |
CodScuola |
NomeScuola |
Indirizzo |
M001 |
Rossi |
Paolo |
M002 |
Bianchi |
Aldo |
M003 |
Verdi |
Ada |
M004 |
Neri |
Maria |
NATF091011 NATF091011 NAXX123456 NAXX123456
NATF091011
ISIS G . Tassinari
Via Fasano , 78
NATF091011 |
ISIS G . Tassinari |
Via Fasano , 78 |
NAXX123456 |
ITIS A . Volta |
Via Roma , 144 |
NAXX123456 |
ITIS A . Volta |
Via Roma , 144 |
Eseguiamo poi la seconda operazione relazionale prevista ossia
ed otterremo la seguente relazion :
T2 = σNomeScuola =" ISIS G . Tassinari " ( T1 )
T2 Matricola Cognome Nome |
CodScuola1 |
CodScuola |
NomeScuola |
Indirizzo |
M001 |
Rossi |
Paolo |
M002 |
Bianchi |
Aldo |
NATF091011 NATF091011
NATF091011
ISIS G . Tassinari
Via Fasano , 78 NATF091011 ISIS G . Tassinari Via Fasano , 78
Infine eseguendo la terza operazione relazionale prevista ossia
otterremo la relazione finale ( risultato ):
T3 Cognome Nome
T3 = ΠCognome , Nome ( T2 )
Rossi Bianchi
Paolo Aldo
Nota Bene Le due query appena eseguite risultano equivalenti ossia danno origine agli stessi risultati , pur utilizzando operazioni relazionali differenti ( stessi risultati ma “ procedimento ” diverso ). Quindi , prima di progettare una query , occorre analizzare attentamente il testo che la descrive ricavando da esso tutte le informazioni richieste e le condizioni imposte sui vari atributi , facendo ben attenzione a coinvolgere esclusivamente le relazioni strettamente necessarie ( al fine di evitare possibili inefficienze )
Autore : Rio Chierego ( email : riochierego @ libero . it - sito web : www . riochierego . it ) Pag . 49