Basi di Dati Esempi di SQL

Похожие документы
Basi di Dati Esempi di SQL

Laura Farinetti - DAUIN Politecnico di Torino. Sia dato lo schema relazionale costituito dalle tabelle (le chiavi primarie sono sottolineate)

Esercizi proposti su SQL - SELECT avanzata. Laura Farinetti - DAUIN Politecnico di Torino

ESERCIZIO 1 SCHEMA RELAZIONALE

Esercizi proposti su SQL SELECT base. Laura Farinetti - DAUIN Politecnico di Torino

2- Il titolo dei film di F. Fellini prodotti dopo il SELECT f.titolo FROM Film f WHERE f.regista = Fellini AND f.annoproduzione > 1960

Laura Farinetti - DAUIN Politecnico di Torino. Sia dato lo schema relazionale costituito dalle tabelle (le chiavi primarie sono sottolineate)

Dato lo SCHEMA RELAZIONALE:

1- Il nome di tutte le sale di Pisa SELECT s.nome FROM Sale s WHERE s.città = 'Pisa'

Esercizi proposti su SQL - SELECT avanzata. Laura Farinetti - DAUIN Politecnico di Torino

Istituto Statale E.Torricelli Liceo Scientifico Tecnologico-Tecnico Industriale. Compiti Estivi Informatica

Laura Farinetti - DAUIN Politecnico di Torino. Sia dato lo schema relazionale costituito dalle tabelle (le chiavi primarie sono sottolineate)

Il linguaggio di Interrogazione SQL Esercizi

Trovare i nomi dei marinai che hanno un imbarco su almeno una nave

1. Per ogni film in cui appaiono solo attori nati prima del 1970 restituire il titolo del film.

Simulazione prova pratica

Alessandra Raffaetà. Esercizio: Cinema

S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali. Alessandra Raffaetà

SQL. Esercitazione. Contatti: Dott. Domenico Fabio Savo

Basi di Dati Esempi di prove di verifica con soluzioni

Esercizi di SQL. R.Gori G.Leoni 1

Basi di Dati DBDMG - Politecnico di Torino Esercizi di SQL

SQL. Esercitazione 6-7. Contatti: Dott.ssa Silvia Bonfanti

Corso di. Basi di Dati I. 11. Esercitazioni in SQL: Altri esercizi

Business Intelligence

Esercizi SQL. Credits Prof. Campi

S Q L E S E R C I Z I

Data management a.a Il linguaggio SQL

Basi di Dati. Esercitazione SQL. Paolo Papotti. 19 maggio 2005

ed SQL 10 Novembre 2009

Select Anagrafiche, Movimenti From Descrizione? Where Anagrafiche.Codice=Codice And Cognome=' Bianchi ';

σ data 15/12/2013 data 20/12/2014

Seconda esercitazione su SQL (con soluzioni) Basi di dati A.A. 2017/18 Maurizio Lenzerini

Compiti d Esame di Basi di Dati e Sistemi Informativi per il CdL in Scienze dei Beni Culturali

Basi di Dati. Esercitazione 1: Interrogazioni in SQL. K. Donno - Interrogazioni in SQL

Basi di dati: appello 04/07/06

Basi di dati: appello 14/07/06

Basi di dati I Prova di autovalutazione 30 ottobre 2014

Basi di Dati Esempi di prove di verifica con soluzioni

Basi di dati I 8 luglio 2016 Esame Compito A Tempo a disposizione: un ora e trenta minuti.

LEZIONE. Reperimento dei dati: SELECT. Alias e calcoli. 110 BLOCCO TEMATICO A Le basi di dati

Nella relazione CINEMA, Nome è chiave secondaria. Nella relazione FILM, CodRegista, e CodProtagonista sono chiavi esterne sulla tabella PERSONE.

Basi di Dati. Esercitazione SQL. Ing. Paolo Cappellari

b) Si scrivano le interrogazioni SQL che restituiscono le seguenti informazioni, senza duplicazione dei risultati:

SQL: Esercizi. ORCHESTRA(CodO, NomeO, NomeDirettore, numelementi) CONCERTI(CodC, Data, CodO, CodS, PrezzoBiglietto) SALE(CodS, NomeS, Citta, Capienza)

3. Selezionare i nomi dei clienti che iniziano con le lettere P, Q, R, S

Basi di Dati Corso di Laura in Informatica Umanistica

Interrogazioni complesse. SQL avanzato 1

Basi di dati I 27 gennaio 2016 Esame Compito A Tempo a disposizione: un ora e quarantacinque minuti. Libri chiusi.

SELECT s.nome, e.data Studenti s, Esami e WHERE e.materia = 'BD' AND e.voto = 30 AND e.matricola = s.matricola

UTENTE (Codice, Nome, Cognome, Indirizzo, Telefono) PRESTITO (Collocazione, CodUtente, DataPrestito, DataRest)

Транскрипт:

Basi di Dati Esempi di SQL Sia dato lo schema relazionale costituito dalle tabelle (le chiavi primarie sono sottolineate): ATTORI (CodAttore, Nome, AnnoNascita, Nazionalità); RECITA (CodAttore, CodFilm) FILM (CodFilm, Titolo, AnnoProduzione, Nazionalità, Regista, Genere) PROIEZIONI (CodProiezione, CodFilm, CodSala, Incasso, DataProiezione) SALE (CodSala, Posti, Nome, Città) Trovare, con l opportuna query SQL: 1. Il numero di sale di Torino con più di 60 posti 2. Il numero totale di posti nelle sale di Torino 3. Per ogni città, il numero di sale con più di 60 posti 4. Per ogni regista, l incasso totale di tutte le proiezioni dei suoi film 5. Per ogni film di S.Spielberg, il titolo del film, il numero totale di proiezioni a Torino e l incasso totale (sempre a Torino) 6. Il regista ed il titolo dei film in cui recitano meno di 6 attori 7. Il titolo dei film dello stesso regista di Casablanca 8. Il titolo dei film in cui recita M. Mastroianni S.Loren 9. Il titolo dei film in cui recitano M. Mastroianni e S.Loren 10. I titoli dei film che non sono mai stati proiettati a Torino 11. I titoli dei film che sono stati proiettati solo a Torino 12. I titoli dei film che non hanno mai avuto una proiezione con incasso superiore a 500 13. I titoli dei film le cui proiezioni hanno sempre ottenuto un incasso superiore a 500 14. Il nome degli attori italiani che non hanno mai recitato in film di Fellini 15. Il titolo dei film di Fellini in cui non recitano attori italiani 16. Il titolo dei film senza attori 17. Gli attori che prima del 1960 (AnnoProduzione < 1960) hanno recitato solo nei film di Fellini 18. Gli attori che hanno recitato in film di Fellini solo prima del 1960

Soluzioni Sia dato lo schema relazionale costituito dalle tabelle (le chiavi primarie sono sottolineate): ATTORI (CodAttore, Nome, AnnoNascita, Nazionalità); RECITA (CodAttore, CodFilm) FILM (CodFilm, Titolo, AnnoProduzione, Nazionalità, Regista, Genere) PROIEZIONI (CodProiezione, CodFilm, CodSala, Incasso, DataProiezione) SALE (CodSala, Posti, Nome, Città) Trovare, con l opportuna query SQL: 1. Il numero di sale di Torino con più di 60 posti SELECT count(*) FROM SALE AS s WHERE s.città = "Torino" and s.posti > 60 2. Il numero totale di posti nelle sale di Torino SELECT sum(s.posti) FROM SALE AS s WHERE s.città = "Torino" 3. Per ogni città, il numero di sale con più di 60 posti SELECT s.città, count(*) FROM SALE AS s WHERE s.posti > 60 GROUP BY s.città 4. Per ogni regista, l incasso totale di tutte le proiezioni dei suoi film SELECT f.regista, sum(p.incasso) AS IncassoTotale, PROIEZIONI AS p WHERE f.codfilm = p.codfilm GROUP BY f.regista

5. Per ogni film di S. Spielberg, il titolo del film, il numero totale di proiezioni a Torino e l incasso totale (sempre a Torino), count(*) AS NumeroProiezioni, sum(p.incasso) AS IncassoTotale, PROIEZIONI AS p, SALE AS s WHERE f.codfilm = p.codfilm and p.codsala=s.codsala AND f.regista = 'S.Spielberg' and s.città = 'Torino' GROUP BY f.codfilm, f.titolo 6. Il regista ed il titolo dei film in cui recitano meno di 6 attori SELECT f.regista, f.titolo, RECITA AS r WHERE f.codfilm = r.codfilm GROUP BY f.codfilm, f.titolo, f.regista HAVING count(*) < 6 SELECT f.regista, f.titolo WHERE 6 > (SELECT count (*) FROM Recita r WHERE f.codfilm = r.codfilm) 7. Il titolo dei film dello stesso regista di Casablanca WHERE f.regista = (SELECT f.regista FROM Film f WHERE f.titolo = "Casablanca") 8. Il titolo dei film in cui recita M. Mastroianni S.Loren SELECT DISTINCT f.titolo, RECITA AS r, ATTORE AS a WHERE (a.nome = "M.Mastroianni" OR a.nome = "S.Loren") AND f.codfilm = r.codfilm AND r.codattore = a.codattore

9. Il titolo dei film in cui recitano M. Mastroianni e S.Loren, WHERE "M.Mastroianni" IN (SELECT a.nome FROM ATTORI AS a, RECITA AS r WHERE f.codfilm = r.codfilm AND r.codattore = a.codattore) AND "S.Loren" IN (SELECT a.nome FROM ATTORI AS a, RECITA AS r WHERE f.codfilm = r.codfilm AND r.codattore = a.codattore) 10. I titoli dei film che non sono mai stati proiettati a Torino WHERE s.città="torino" AND f.codfilm=p.codfilm AND p.codsala =s.codsala) WHERE "Torino" NOT IN (SELECT s.città WHERE f.codfilm = p.codfilm and p.codsala =s.codsala) 11. I titoli dei film che sono stati proiettati solo a Torino WHERE Città < > "Torino" AND f.codfilm = p.codfilm AND p.codsala = s.codsala) Oppure WHERE "Torino" = ALL (SELECT s.città WHERE f.codfilm = p.codfilm AND p.codsala = s.codsala)

12. I titoli dei film che non hanno mai avuto una proiezione con incasso superiore a 500 WHERE Incasso > 500 and f.codfilm = p.codfilm) WHERE 500 > = ALL (SELECT p.incasso WHERE f.codfilm = p.codfilm) 13. I titoli dei film le cui proiezioni hanno sempre ottenuto un incasso superiore a 500 WHERE Incasso <= 500 and f.codfilm = p.codfilm) WHERE 500 <= (SELECT min(p.incasso) WHERE f.codfilm = p.codfilm) 14. Il nome degli attori italiani che non hanno mai recitato in film di Fellini SELECT a.nome FROM ATTORI AS a WHERE a.nazionalità = "Italiana" AND NOT EXISTS, RECITA AS r WHERE f.codfilm = r.codfilm AND r.codattore=a.codattore AND f.regista = "Fellini")

15. Il titolo dei film di Fellini in cui non recitano attori italiani WHERE f.regista = "Fellini" AND NOT EXISTS FROM ATTORI AS a, RECITA AS r WHERE f.codfilm = r.codfilm AND r.codattore = a.codattore AND a.nazionalità = "Italiana") 16. Il titolo dei film senza attori FROM RECITA AS r WHERE f.codfilm = r.codfilm) 17. Gli attori che prima del 1960 (AnnoProduzione < 1960) hanno recitato solo nei film di Fellini SELECT a.nome FROM ATTORI AS a, RECITA AS r WHERE f.codfilm = r.codfilm AND r.codattore = a.codattore AND f.annoproduzione < 1960 AND f.regista < > "Fellini") 18. Gli attori che hanno recitato in film di Fellini solo prima del 1960 SELECT a.nome FROM ATTORI AS a, RECITA AS r WHERE f.codfilm = r.codfilm AND r.codattore = a.codattore AND f.annoproduzione > 1960 AND f.regista = "Fellini")