Upload
trankiet
View
265
Download
1
Embed Size (px)
Citation preview
OPERATORI RELAZIONALI ESERCIZI
SCHEMA OPERATORI RELAZIONALI
operano su UNA TABELLA
NB: INTERSEZIONE, UNIONE, DIFFERENZA SI POSSONO FARE SOLO CON TABELLE COMPATIBILI CIOE’ AVENTI LO STESSO SCHEMA DI ATTRIBUTI ( stesse colonne )
SELEZ. RIGHE
SELEZ. COLONNE
operano su due TABELLE
TUPLE COMUNI E NON COMUNI
TUPLE DI R – TUPLE DI S
ASSOCIA AGNI TUPLA DI R TUTTE LE TUPLE DI S
TUPLE COMUNI ( se ci sono )
Congiunge tabelle R ed S con aJributo comune
RIPASSO
OPERATORI RELAZIONALI PRINCIPALI
SELEZIONE (DI RIGHE)
PER Predicato DA relazione
σ ciJà=“Torino” (ClienR)
∏Campo1,Campo2 (Tabella)
PROIEZIONE (DI COLONNE)
SU ListaAJribuR DA relazione
GIUNZIONE NATURALE JOIN fra
TabellaR su Cod e TabellaS su Cod R ⋈ S
Cod=Cod
Nel Predicato si uRlizzano anche AND e OR
DUE TABELLE si possono congiungere
Da UNA TABELLA posso ricavare :
RIPASSO
Codice colore
001 verde
002 rosso
Codice colore
001 verde
002 rosso
003 verde
R =colori2015 S=colori2016
TROVA: 1) RUS 2) R-‐S 3) S-‐R 4) R∩S 5) RXT 6) SXT Indicando per ogni relazione grado e cardinalità
ID taglia quanLtà
A1 S 13
A2 M 15
A3 L 18
A4 XL 50
T=arLcoli
Esercizio 1
DATE LE TABELLE RAPPRESENTATE
Codice colore
001 verde
002 rosso
003 verde
RUS R-‐S
S-‐R Codice colore
001 verde
002 rosso
R∩S
Codice colore ID taglia quanLtà
001 verde A1 S 13
001 verde A2 M 15
001 verde A3 L 18
001 verde A4 XL 50
002 rosso A1 S 13
002 rosso A2 M 15
002 rosso A3 L 18
002 rosso A4 XL 50
R x T =TXR
Esercizio 1 : soluzione
trova unione, intersezione, differenza fra laureaR e quadri
E indica, per ciascuna relazione risultante, GRADO E CARDINALITA’
Esercizio 2
Esercizio 2 soluzione
Grado = 3 CARD=4
Grado = 3 CARD=2
Grado = 3 CARD=1
UNIONE
INTERSEZIONE
DIFFERENZA
Esercizio 3
• Elenco impiegaR che guadagnano più di 62 mila Euro • Elenco impiegaR che guadagnano più di 62 mila Euro e lavorano a Milano • Matricola e Cognome degli impiegaR con SRpendio maggiore di 62
Si esprima, nell’algebra relazionale, ciascuna delle seguenR interrogazioni
Esercizio 3 -‐ soluzione
Esercizio 3 -‐ soluzione
PRIMA SELEZIONE STIPENDIO >62 , POI PROIEZIONE CAMPI
Matricola e Cognome degli impiegaR con SRpendio maggiore di 62
SELEZIONE
SELEZIONE
Data lo schema STUDENTE ( Matricola, Cognome, Nome , Indirizzo, CodFac ) Q1: StudenR della facoltà “L21” Q2: Matricola e Cognome Q3: Matricola e Cognome degli studen: della facoltà L21 Q4: Matricola degli studenR della facoltà “L21” e Cognome=“Rossi”
Si esprima, nell’algebra relazionale, ciascuna delle seguenR interrogazione (query):
Esercizio 4
Tabella Di esempio
Query1: StudenR della facoltà “L21” è UNA SELEZIONE Q1= σ CodFac=“L21” (Studente)
Query2: Matricola e Cognome è UNA PROIEZIONE DI COLONNE Q2=∏ Matricola, Cognome (Studente)
Query3: “Matricola e Cognome degli studen: della facoltà L21 Q3=∏ Matricola, Cognome (σ CodFac=“L21”(Studente))
Q4. “Matricola degli studenR di “L21” E di Cognome=“Rossi” Q4=∏ Matricola (σ CodScuola=“B001”AND Cognome=“Bianchi”(Studente))
R=STUDENTE ( Matricola, Cognome, Nome , Indirizzo, CodFac )
Esercizio 4 -‐ soluzione
Si assuma il seguente schema relazionale per la ges:one di una biblioteca: LIBRO(codiceLibro, autore, Rtolo, prezzo) UTENTE(codiceUtente, nome, cognome, eta’, CiJà ) PRESTITO(codiceUtente, codiceLibro, data_presRto) Si esprimano, nell’algebra relazionale, le seguen: interrogazioni: a) Elenco Autori dei libri b) Elenco Cognome degli utenR c) Elenco Rtolo e prezzo dei libri d) Elenco libri con prezzo inferiore a 15 Euro e) Elenco libri di Camilleri che abbiano prezzo inferiore a 15 Euro f) Elenco libri di Camilleri oppure con prezzo inferiore a 15 Euro g) Elenco autori dei libri con prezzo inferiore a 15 Euro
Esercizio 5
Si assuma il seguente schema relazionale per la ges:one di una biblioteca: LIBRO(codiceLibro, autore, Rtolo, prezzo) UTENTE(codiceUtente, nome, cognome, eta’, CiJà ) PRESTITO(codiceUtente, codiceLibro, data_presRto) Si esprimano, nell’algebra relazionale, le seguen: interrogazioni: a) Elenco Autori dei libri ∏ autore (LIBRO) b) Elenco Cognome degli utenR ∏ Cognome (UTENTI) c) Elenco Rtolo e prezzo dei libri ∏ Rtolo,prezzo (LIBRO) c) Elenco libri con prezzo inferiore a 15 Euro σ prezzo <15 (LIBRO) c) Elenco libri di Camilleri che abbiano prezzo inferiore a 15 Euro σ autore=“Camilleri” AND prezzo <15 (LIBRO) c) Elenco libri di Camilleri oppure con prezzo inferiore a 15 Euro σ autore=“Camilleri” OR prezzo <15 (LIBRO) c) Elenco autori dei libri con prezzo inferiore a 15 Euro ∏ autore (σ prezzo <15 (LIBRO) )
ESERCIZIO 5 -‐ SOLUZIONE
6 -‐ Esempio con join, selezione e proiezione
1 : JOIN tra FILM1 e FILM2 SU aJributo idenRco Codicefilm1 Il join naturale accoppia le t-‐uple con valore uguale 2 : Selezionare le t-‐uple con la condizione “Lunghezza >120” 3 : ProieJare colonna con “AJorePrincipale”
CodFilm1=CodFilm1
1-‐Join 3-‐ProiezioneColonna 2-‐selezioneRighe
Dato il seguente schema
Operatori nidificaR Dall’interno all’esteno
7 -‐ Esercizio con Join, selezione e proiezione
Dato lo schema : STUDENTE ( Matricola, Cognome, Nome, Residenza, CodFac ) FACOLTA’(CodFac , Descrizione , CiJà ) Si esprima, nell’algebra relazionale, la seguente interrogazione: Cognome, Nome e Descrizione della Facoltà per gli studenL che risiedono a Milano
Tabelle di esempio
Date le tabelle : STUDENTE ( Matricola, Cognome, Nome, Residenza, CodFac ) FACOLTA’(CodFac , Descrizione , CiJà ) Si esprima, nell’algebra relazionale, la seguente interrogazione: Query : Cognome, Nome e Descrizione della Facoltà per gli studenR che risiedono a Milano
7 -‐ Esercizio con Join , selezione e proiezione
1 : JOIN tra Studente su CodFAc e Facolta su CodFac. Il join naturale accoppia solo le t-‐uple con valore uguale
2 : Selezione di t-‐uple per condizione Indirizzo=“Milano”
3 : Proiezione le colonne Cognome, Nome, Descrizione
∏ Cognome, Nome, Descrizione ( σ Residenza=“Milano” (Studente ⋈ Facoltà) ) CodFac=CodFac
Si opene Questa tabella
soluzione