Es. 2 Si consideri il seguente schema relazionale: Attori(CodiceAtt, Nome, AnnoNascita); AttoriFilm(CodiceAtt*, CodiceFilm*) Film(CodiceFilm, Titolo, AnnoProduzione, Regista) Proiezioni(CodiceFilm*, CodiceSala*, Incasso, DataProiezione) Sala(CodiceSala, Posti, Nome, Città) Si scrivano in SQL le seguenti interrogazioni: 1) Per ogni film in cui appare un attore nato nel 1970 restituire il titolo del film e il nome dell’attore SELECT f.Titolo, a.Nome FROM Attori a, AttoriFilm af, Film f WHERE a.CodiceAtt = af.CodiceAtt AND af.CodiceFilm = f.CodiceFilm AND a.AnnoNascita = 1970; 2) Restituire, senza duplicati, il CodiceFilm di tutti i film per i quali c’è stata una proiezione con incasso maggiore di un milione in una sala che avesse meno di 100 posti oppure che si trovasse a Pisa SELECT DISTINCT p.CodiceFilm FROM Proiezioni p, Sale s WHERE p.CodiceSala=s.CodiceSala AND p.Incasso > 1000000 AND (s.Posti < 100 OR s.Città = ’Pisa’ ); 3) Per ogni film che è stato proiettato a Pisa restituire il titolo del film e il nome della sala, evitando le duplicazioni nella risposta SELECT DISTINCT f.Titolo, s.Nome FROM Film f, Proiezioni p, Sale s WHERE f.CodiceFilm = s.CodiceFilm AND p.CodiceSala=s.CodiceSala AND s.Città = ’Pisa’; 4) Trovare il titolo di tutti i film prodotti prima del 1975. SELECT f.Titolo FROM Film f WHERE f. AnnoProduzione <1975 ; 5) Per ogni regista, restituire il nome e l’incasso totale di tutte le proiezioni dei suoi film SELECT f.Regista, SUM(p.Incasso) FROM Film f, Proiezioni p WHERE f.CodiceFilm = p.CodiceFilm GROUP BY f.Regista ; 6) Per ogni città restituire il nome della città ed il numero di sale con più di 100 posti SELECT s.Città, COUNT(*) FROM Sale s WHERE s.Posti > 100 GROUP BY s.Città ;