Esercizi SQL ESERCIZIO 1 ESERCIZIO 2 ESERCIZIO 3 ESERCIZIO 4
Transcript
Esercizi SQL ESERCIZIO 1 ESERCIZIO 2 ESERCIZIO 3 ESERCIZIO 4
Esercizi SQL ESERCIZIO 1 Dato il seguente schema relazionale: AEROPORTO( Città, Nazione, NumPiste) VOLO( IdVolo, GiornoSett, CittaPart, OraPart, CittaArr, OraArr, TipoAereo) AEREO( TipoAereo, NumPasseggeri, QtaMerci) Scrivere in SQL le interrogazioni seguenti: • Determinare per ogni aeroporto italiano il massimo numero di passeggeri che possono arrivare direttamente dalla Francia di giovedì. ESERCIZIO 2 Dato il seguente schema relazionale: Regista(Nome, DataNascita, Nazionalita`) Film(Titolo, NomeRegista, Anno) Proiezione(Nomecinema, Nomefilm, Citta`) scrivere in SQL le interrogazioni seguenti: • Selezionare le Nazionalita`dei registi che hanno diretto dei film nel 1992 ma non hanno diretto film nel 1993. • Individuare i nomi dei registi che hanno girato nel 1993 piu` film di quanti ne avevano girati nel 1992. • Individuare le date di nascita dei registi che hanno diretto film che sono stati proiettati sia a Torino che a Milano. ESERCIZIO 3 Dato il seguente schema relazionale: AUTORE(Nome, Cognome, Data-N, Nazionalita) AUTORELIBRO(Nome, Cognome, Segnatura) LIBRO(Segnatura, Scaffale, Argomento, Lingua) Scrivere in SQL l`interrogazione seguente: • Selezionare il cognome degli autori tedeschi di libri in italiano con Argomento ``filosofia`` o ``logica``. • Selezionare la data di nascita degli autori italiani di libri in inglese di Argomento ``informatica``, che non sono autori di libri di Argomento ``matematica``. • Selezionare gli autori (selezionati in base al loro Nome e Cognome) che hanno piu` di 10 libri diversi contenuti nel terzo scaffale della biblioteca. ESERCIZIO 4 Dato il seguente schema relazionale che descrive il calendario di una manifestazione sportiva a squadre nazionali: STADIO(NUMERO,Citta`,Capienza) INCONTRO(NUM-STADIO,Squadra1,Squadra2,DATA,ORA) NAZIONALE(PAESE,Continente,Categoria) Esprimere in SQL le seguenti interrogazioni: • Estrarre i numeri degli stadi in cui non gioca nessuna nazionale europea. • Estrarre la capienza complessiva degli stadi in cui si giocano le partite che hanno come prima squadra una nazione sudamericana (nota: ai fini della valutazione della capienza complessiva, si sommino le capienze associate a ciascuna gara, anche se piu` gare si svolgono nello stesso stadio). 1 Esercizi SQL • Estrarre la città in cui si trova lo stadio in cui la squadra italiana gioca piu` partite. ESERCIZIO 5 Si ha il seguente schema di base di dati: Giornalista (NOME,DataN,Citta) Articolo (TITOLO,DATA,Autore,Genere,Giornale,Pagina) Giornale (TESTATA,Direttore,CittaSede) Formulare in SQL le seguenti interrogazioni: • Determinare il nome e la data di nascita dei giornalisti che non hanno mai lavorato per un giornale della propria citta, ma che hanno scritto articoli per altri giornali. • Determinare i giornalisti che hanno scritto su un giornale piu` articoli del direttore. • Definire una vista che restituisce per ogni giornale il genere di articoli maggiormente pubblicati. ESERCIZIO 6 Si ha il seguente schema di base di dati: Film (TITOLO,Regista,Anno) Interpreta (ATTORE,FILM,PERSONAGGIO) Attore (NOME,AnnoNascita,Nazionalita) Formulare in SQL le seguenti interrogazioni: • Trovare gli attori che hanno interpretato piu` personaggi nello stesso film. • Trovare gli attori italiani che non hanno mai lavorato nello stesso film con altri attori italiani. • Trovare un film in cui recita un solo attore che pero` interpreta piu` personaggi. ESERCIZIO 7 Dato il seguente schema relazionale: Officina (NUMERO,Sede,Direttore,Fatturato-92) Riparazione (NUM-OFFICINA,NUM-CLIENTE,NUM-RIPARAZIONE,Tipo-Riparazione,TipoAuto,Data,Pagamento) Cliente (NUM-CLIENTE,Nome,Indirizzo) Scrivere in SQL le interrogazioni seguenti: • Determinare nome e indirizzo dei clienti che hanno pagato qualche riparazione relativa ad auto Fiat il cui importo (individuale) sia superiore a 5 milioni in officine site fuori Milano. • Determinare nome e indirizzo dei clienti che hanno pagato riparazioni nel 1992 per un ammontare complessivo superiore al tre per cento del fatturato dell`officina stessa nel 1992. • Determinare nome e indirizzo dei clienti che hanno pagato piu` di dieci riparazioni nel 1991 ma non hanno pagato alcuna riparazione nel 1992. 2