Esercizi SQL

In questa sezione puoi trovare esercizi relativi al linguaggio SQL

Esercizi di query language

Esercizio 1: Film-Attori-Generi

Dato il seguente schema relazionale di un database:
attori (id_attore, nome, cognome, data_nascita)
film (id_film, nome, trama, durata, data_uscita, id_genere*)
generi (id_genere, nome, descrizione)
recitare (id_attore, id_film, ruolo)

Rispondere in SQL alle seguenti query:

Puoi testare il codice della tua soluzione importando su xampp il database in formato .sql presente al seguente link.

Esercizio 2: Numeri telefonici - Persone - Smartphone

Dato il seguente schema relazionale di un database:
persone (id_persona, nome, cognome, data_nascita)
numeri_telefonici (id_numero, numero, compagnia_telefonica, id_persona*)
smartphone (id_smartphone, marca, modello, colore)
smartphone_posseduti (id_smartphone, id_persona, data_acquisto)

Rispondere in SQL alle seguenti query:

Puoi testare il codice della tua soluzione importando su xampp il database in formato .sql presente al seguente link.

Esercizio 3: Sanremo

Dato il seguente schema relazionale di un database:
artisti (id_artista, nome, numero_album, citta)
brani (id_brano, nome)
esibizioni (id_artista, id_brano, data)

Rispondere in SQL alle seguenti query:

Puoi testare il codice della tua soluzione importando su xampp il database in formato .sql presente al seguente link.

Esercizio 4: canzoni - playlist - utente

Dato il seguente schema relazionale di un database:
canzoni (id_canzone, titolo, durata, genere, data_uscita, num_ascolti)
canzoni_playlist (id_canzone, cod_playlist)
playlist (cod_playlist, nome, id_utente*)
utenti (id_utente, nome, cognome)

Rispondere in SQL alle seguenti query:

Puoi testare il codice della tua soluzione importando su xampp il database in formato .sql presente al seguente link.

Esercizio 5: tutorial - social - categorie

Dato il seguente schema relazionale di un database:
categorie (id_categoria, nome, descrizione)
social_network (id_social_network, nome)
tutorial (id_tutorial, titolo, descrizione, livello, durata, link, id_categoria*)
tutorial_social_network (id_tutorial, id_social_network)

Rispondere in SQL alle seguenti query:

Puoi testare il codice della tua soluzione importando su xampp il database in formato .sql presente al seguente link.

Esercizio 6:  discoteche - dj - eventi

Dato il seguente schema relazionale di un database:
discoteche (id_discoteca, nome, indirizzo, citta, telefono)
dj (id_dj, nome, genere_musicale)
eventi (id_evento, nome, data, orario, descrizione, prezzo, id_discoteca*)
dj_eventi (id_dj, id_evento)

Rispondere in SQL alle seguenti query:

Puoi testare il codice della tua soluzione importando su xampp il database in formato .sql presente al seguente link.

Esercizio 7controlli aeroportuali

Dato il seguente schema relazionale di un database:
passeggeri (id_passeggero, nome, cognome, nazionalita, tipo_documento, numero_documento)
viaggi (id_viaggio, partenza , aeroporto , motivo , id_passeggero*)
merci (id_merce, categoria, descrizione, quantita, id_viaggio*, id_controllo*)
controlli (id_controllo, punto_di_controllo, esito, dazio_doganale, data_inizio, durata, ora_inizio, note , id_passeggero*, id_addetto*)
addetti (id_addetto, nome, cognome)

Rispondere in SQL alle seguenti query:

Puoi testare il codice della tua soluzione importando su xampp il database in formato .sql presente al seguente link. Il testo di questo esercizio deriva dal database ideato per risolvere la prova 2013 dell'esame di stato e dal prezioso aiuto dello studente NATHAN MBUYAMBA 5EI (A.S. 2022/23).

Esercizio 8Voli aerei

Dato il seguente schema relazionale di un database:
aeroporti (id_aeroporto, nome, via, citta, nazione, num_terminali, num_piste)
voli (id_volo, codice_volo, data, ora_partenza, ora_arrivo, id_aereo*, id_aeroporto_partenza*, id_aeroporto_arrivo*)
aerei (id_aereo, nome, tipo, num_passeggeri, id_compagnia*)
compagnie (id_compagnia, nome, sitoweb, peso_bagaglio_incluso)

Rispondere in SQL alle seguenti query:

Puoi testare il codice della tua soluzione importando su xampp il database in formato .sql presente al seguente link

Esercizi di DDL (Data Definition Language) e DML (Data Manipulation Language)

Esercizio 9:  Automobile

Scrivere il codice SQL che consente di creare il database "concessionaria". All'interno del database creare la tabella:

automobili (id_automobile, marca, modello, colore, velocita_massima, numero_cavalli)

In particolare: 

In seguito creare la tabella dei clienti che acquistano le automobili:

clienti (id_cliente, nome, cognome, codice_fiscale, genere, data_nascita)

In particolare:

Presupponendo che un cliente può acquistare molte macchine e che un'automobile può essere acquistata da un cliente, si aggiungano le colonne 'id_cliente' e 'data_acquisto' alla tabella automobili.
Infine si specifichi che la colonna id_cliente della tabella automobili è chiave esterna che fa riferimento alla colonna id_cliente della tabella clienti.

Esercizio 10:  Recensire i giochi da tavolo

Dato il seguente schema relazionale di un database:
giochi (id_gioco, nome, anno_pubblicazione, numero_giocatori_minimo, numero_giocatori_massimo, durata_media, id_categoria*)
giocatori (id_giocatore, nome, data_nascita)
categorie (id_categoria, nome_categoria, descrizione)
recensire (id_gioco*, id_giocatore*, testo, voto, data)

Implementare le query di DDL in grado di creare il database dei giochi da tavolo. In particolare si preveda che:

In seguito implementare i comandi di DML in grado di inserire nelle tabelle le seguenti istanze:

Adesso rispondere alle seguenti query:

Esercizio 11Sport

Si vuole creare un database in grado di tenere traccia degli sport che si giocano alle olimpiadi e agli atleti che partecipano in tale olimpiade. Realizzare: