altri esercizi. 1 sql dati i seguenti schemi relazionali: fornitori(fid:integer, fnome:char,...
TRANSCRIPT
![Page 1: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/1.jpg)
Altri Esercizi
![Page 2: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/2.jpg)
2
SQL
Dati i seguenti schemi relazionali:
Fornitori(fid:integer, fnome:char, indirizzo:char)Pezzi(pid:integer, pnome:char, colore:char)Catalogo(fid:integer, pid:integer, prezzo:real)
esprimere in SQL la seguente interrogazione:a “Trovare i nomi dei pezzi forniti da Rossi con prezzo maggiore a 15.5 $”
![Page 3: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/3.jpg)
3
SQL
select P.pnomefrom Pezzi P, Catalogo C, Fornitori Fwhere C.fid=F.fid and
P.pid=C.pid and C.prezzo>15.5 and F.fnome=“Rossi”
oppure
select p.pnomefrom Pezzi P natural join Catalogo C
natural join Fornitori Fwhere C.prezzo>15.5 and F.fnome=“Rossi”
![Page 4: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/4.jpg)
4
SQL
Dati i seguenti schemi relazionali:
Nave(nid:integer, nnome:char, colore:char)Marinaio(mid:integer, mnome:char, età:integer)Imbarco(nid:integer, mid:integer, data:date)
Esprimere in SQL:“Trovare gli identificativi dei marinai con imbarchi su navi rosse e su navi blu ”
![Page 5: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/5.jpg)
5
SQL
select I.midfrom Imbarco I, Nave Nwhere I.nid=N.nid and
N.colore=“rosso” and N.colore=“blu”
...Ma NON è una risposta corretta: la sua risposta è sempre vuota. Questa query seleziona le navi sia rosse che blu....
![Page 6: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/6.jpg)
6
SQL
risposta corretta
select I.midfrom Imbarco I, Nave N1, Nave N2where I.nid=N1.nid and
I.nid=N2.nid and N1.colore=“rosso” andN2.colore=“blu”
![Page 7: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/7.jpg)
7
SQL
Si consideri il seguente schema relazionale:
Impiegato(cod:int, nome:char, cognome: char, dip:int, stipendio: int)
Dipartimento(dip:integer,nomedip:char,sede:char)
trovare i nomi e cognomi di tutti gli impiegati con cognomi uguali ma nomi diversi che lavorano nel dipartimento Produzione
![Page 8: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/8.jpg)
8
SQL
select I1.nome, I1.cognomefrom Impiegato I1, Impiegato I2, Dipartimento D
where I1.dip=D.dip andI1.cognome=I2.cognome and I1.nome <> I2.nome andD.nomedip=“Produzione”
![Page 9: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/9.jpg)
9
EREsprimere con uno schema ER le seguenti
specifiche: il database di un museo contiene informazioni
riguardo alle opere d’arte attualmente ospitate in tale museo ed informazioni relative al personale:
1 Ogni opera ha identificativo (che la identifica unvocamente), il tipo (ad es. pittura, scultura…), lo stile e l’autore.
2 Ogni individuo che lavora al museo ha codice fiscale, nome, indirizzo e salario.
3 Alcuni membri del personale del museo sono restauratori.
4 Ogni restauratore è esperto di un solo tipo di opera. Esistono opere di cui nessun restauratore è esperto
![Page 10: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/10.jpg)
10
ER
opera
esperienza
personale
restauratore
altro personale
(1,1)
(0,N)
![Page 11: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/11.jpg)
11
SQL
Con riferimento allo schema relazionale
Impiegato(nome:char, cognome: char, dip:int,stip:int)
vogliamo sapere quanti impiegati lavorano nel dipartimento avente codice identificativo uguale a 123
![Page 12: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/12.jpg)
12
SQL
select count(*)from Impiegato where Impiegato.dip=123
![Page 13: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/13.jpg)
13
SQL
sempre tenendo conto degli schemi relazionali relativi agli impiegati ed ai dipartimenti, trovare la somma degli stipendi di tutti gli impiegati dello stesso dipartimento
select I.dip, sum(I.stipendio)from Impiegato Igroup by I.dip
![Page 14: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/14.jpg)
14
SQL
Esprimere la seguente interrogazione: trovare
![Page 15: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/15.jpg)
15
SQLOltre alle tabelle Impiegato e Dipartimento, si consideri la tabella
Progetto(codice:int, nome:char, budget:real)
e la tabellaPartecipazione(cod:int,codice:int,datainizio:date)
Gli attributi cod e codice sono chiavi esterne delle tabelle Impiegato e Progetto
trovare i cognomi degli impiegati che partecipano al progetto “WebDB” dal 15 aprile 2005
![Page 16: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/16.jpg)
16
SQL
select I.cognomefrom Impiegato I, Progetto P, Partecipazione Partwhere I.cod=Part.cod and P.codice=Part.codice andP.nome=‘WebDB’ and part.datainizio>=15/4/05
![Page 17: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/17.jpg)
17
SQL
trovare i cognomi degli impiegati che partecipano a qualche progetto a partire dal 15 aprile 2005
![Page 18: Altri Esercizi. 1 SQL Dati i seguenti schemi relazionali: Fornitori(fid:integer, fnome:char, indirizzo:char) Pezzi(pid:integer, pnome:char, colore:char)](https://reader036.vdocuments.pub/reader036/viewer/2022082702/5542eb4d497959361e8bbb48/html5/thumbnails/18.jpg)
18
SQL
select I.cognomefrom Impiegato I, Partecipazione Partwhere I.cod=Part.cod and part.datainizio>=15/4/05