17
OPERATORI RELAZIONALI ESERCIZI

OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

Embed Size (px)

Citation preview

Page 1: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

OPERATORI  RELAZIONALI  ESERCIZI    

   

Page 2: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

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  

Page 3: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

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  

Page 4: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

 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  

Page 5: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

 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  

Page 6: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

trova  unione,  intersezione,  differenza  fra  laureaR  e  quadri  

E  indica,  per  ciascuna  relazione  risultante,    GRADO  E  CARDINALITA’  

Esercizio  2  

Page 7: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

Esercizio  2  soluzione  

Grado  =  3  CARD=4  

Grado  =  3  CARD=2  

Grado  =  3  CARD=1  

UNIONE  

INTERSEZIONE  

DIFFERENZA  

Page 8: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

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  

Page 9: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

Esercizio  3  -­‐  soluzione  

Page 10: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

Esercizio  3  -­‐  soluzione  

PRIMA  SELEZIONE  STIPENDIO  >62  ,    POI  PROIEZIONE  CAMPI  

 Matricola  e  Cognome    degli  impiegaR  con  SRpendio  maggiore  di  62  

SELEZIONE  

SELEZIONE  

Page 11: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

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    

Page 12: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

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  

Page 13: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

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  

Page 14: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

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  

Page 15: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

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  

Page 16: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

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  

Page 17: OPERATORI(RELAZIONALI( ESERCIZI(( - …artemate.altervista.org/afm/A3b-OperatoriRelazionali...Si’assuma’il’seguente’schema’relazionale’per’la’ges:one’di’una’biblioteca:

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