Simulazione prova pratica

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

Basi di Dati Esempi di SQL

Basi di Dati Esempi di SQL

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

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

ESERCIZIO 1 SCHEMA RELAZIONALE

Basi di Dati. S Q L Lezione 4

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

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

Esempi SQL con Access. Orazio Battaglia

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

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

Tipi di sottoquery SQL

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

Operatori aggregati: COUNT

SQL. Esercitazione. Contatti: Dott. Domenico Fabio Savo

Basi di dati: appello 14/07/06

Business Intelligence

Basi di dati: appello 04/07/06

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

SQL - Structured Query Language

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

S Q L E S E R C I Z I

ESERCITAZIONE 4 Giovedì 13 novembre 2014 (3 ore) SQL

SQL Laboratorio di Basi di Dati a.a. 2002/2003

Basi di dati I Prova di autovalutazione 30 ottobre 2014

SQL [2] Concetti avanzati di SQL. Esempi di interrogazioni

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

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

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, SQL

Basi di dati 8 settembre 2015 Esame Compito A Tempo a disposizione: due ore. Libri chiusi.

Istruzioni DML di SQL

SELECT FROM ORDER BY SELECT FROM ORDER BY DESC DESC SELECT FROM ORDER BY DESC DESC SELECT FROM WHERE SELECT FROM WHERE AND SELECT FROM WHERE AND

Data management a.a Il linguaggio SQL

Interrogazioni nidificate

SQL: le funzioni di aggregazione

Esercitazione 3 SQL.

Interrogazioni complesse. SQL avanzato 1

Esercizi SQL. Credits Prof. Campi

Basi di dati I 19 settembre 2016 Tempo a disposizione: un ora e 45 minuti.

Basi di Dati: Elementi

ed SQL 10 Novembre 2009

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

Transcript:

Simulazione prova pratica Luca Martini Università di Pisa 14 maggio 2010

Database usato nella simulazione

Esercizio 1 - Risultati Titolo dei film in cui la nazionalità di tutti gli attori è uguale alla nazionalità del regista Titolo ET Le crociate Black Hawk Down Inside man Contact Braveheart Cuore impavido Tootsie Le grand bleu

Esercizio 1 Titolo dei film in cui la nazionalità di tutti gli attori è uguale alla nazionalità del regista Soluzione con NOT IN SELECT Film. T i t o l o FROM Film WHERE Film. CodFilm NOT IN (SELECT Film. CodFilm FROM Film, Regista, I n t e r p r e t a z i o n e, A t t o r e WHERE Film. CodRegista=Regista. CodRegista AND Film. CodFilm= I n t e r p r e t a z i o n e. CodFilm AND I n t e r p r e t a z i o n e. CodAttore= A t t o r e. CodAttore AND Regista. N a z i o n a l i t a <>A t t o r e. N a z i o n a l i t a )

Esercizio 1 - Soluzione alternativa Titolo dei film in cui la nazionalità di tutti gli attori è uguale alla nazionalità del regista Soluzione con NOT EXISTS SELECT T i t o l o FROM Film F, Regista R WHERE F. CodRegista = R. CodRegista AND NOT EXISTS ( SELECT FROM I n t e r p r e t a z i o n e I, A t t o r e A WHERE I. CodFilm = F. CodFilm AND A. CodAttore = I. CodAttore AND A. N a z i o n a l i t a <> R. N a z i o n a l i t a )

Esercizio 2 - Risultati Nome e cognome degli attori che hanno interpretato più film Nome Cognome Gary Oldman Jean Reno

Esercizio 2 Nome e cognome degli attori che hanno interpretato più film Vista di appoggio CREATE VIEW A t t o r e F i l m AS ( SELECT CodAttore, COUNT(DISTINCT CodFilm ) AS NumFilm FROM I n t e r p r e t a z i o n e GROUP BY CodAttore ) Soluzione SELECT Nome, Cognome FROM A t t o r e A JOIN A t t o r e F i l m AF ON A. CodAttore = AF. CodAttore WHERE NumFilm=(SELECT MAX( NumFilm ) FROM A t t o r e F i l m )

Esercizio 2 - Soluzione alternativa Nome e cognome degli attori che hanno interpretato più film Vista di appoggio CREATE VIEW A t t o r e F i l m AS ( SELECT CodAttore, COUNT(DISTINCT CodFilm ) AS NumFilm FROM I n t e r p r e t a z i o n e GROUP BY CodAttore ) Soluzione alternativa SELECT Nome, Cognome FROM A t t o r e A JOIN A t t o r e F i l m AF ON A. CodAttore = AF. CodAttore WHERE NumFilm>=ALL(SELECT NumFilm FROM A t t o r e F i l m )

Esercizio 3 Nome e cognome degli attori che hanno interpretato più film Soluzione senza viste SELECT Nome, Cognome FROM I n t e r p r e t a z i o n e I, A t t o r e A WHERE A. CodAttore = I. CodAttore GROUP BY A. CodAttore, Nome, Cognome HAVING COUNT(DISTINCT( CodFilm ) ) >= ALL( SELECT COUNT(DISTINCT( CodFilm ) ) FROM I n t e r p r e t a z i o n e GROUP BY CodAttore )

Esercizio 4 - Risultati Titolo dei film in cui il numero degli attori è superiore al numero medio di attori nei vari film Titolo Leon JFK Un caso ancora aperto Ritratto di signora Signs

Esercizio 4 - Soluzione Titolo dei film in cui il numero degli attori è superiore al numero medio di attori nei vari film Soluzione CREATE VIEW F i l m A t t o r i AS ( SELECT CodFilm, COUNT(DISTINCT CodAttore ) as NumAttori FROM I n t e r p r e t a z i o n e GROUP BY CodFilm ) SELECT T i t o l o FROM Film F JOIN F i l m A t t o r i FA ON F. CodFilm = FA. CodFilm WHERE NumAttori > ( SELECT AVG( NumAttori ) FROM F i l m A t t o r i )

Esercizio 5 - Risultati Nome e il cognome degli attori che non hanno interpretato film diretti da registi con nazionalità diversa dalla loro Nome e Cognome Drew Barrymore Orlando Bloom Jodie Foster Kevin Costner Dustin Hoffman M.Night Shyamalan

Esercizio 5 - Soluzione Nome e il cognome degli attori che non hanno interpretato film diretti da registi con nazionalità diversa dalla loro Soluzione con NOT IN SELECT Nome, Cognome FROM A t t o r e WHERE CodAttore NOT IN ( SELECT A. CodAttore FROM A t t o r e A, I n t e r p r e t a z i o n e I, Film F, Regista R WHERE A. CodAttore = I. CodAttore AND I. CodFilm = F. CodFilm AND F. CodRegista = R. CodRegista AND R. N a z i o n a l i t a <> A. N a z i o n a l i t a )

Esercizio 5 - Soluzione alternativa Nome e il cognome degli attori che non hanno interpretato film diretti da registi con nazionalità diversa dalla loro Soluzione con NOT EXISTS SELECT Nome, Cognome FROM A t t o r e A WHERE NOT EXISTS ( SELECT FROM Film F, I n t e r p r e t a z i o n e I, Regista R WHERE F. CodFilm= I. CodFilm AND F. CodRegista=R. CodRegista AND I. CodAttore=A. CodAttore AND A. N a z i o n a l i t a <>R. N a z i o n a l i t a )