Schema relazionale
ATTORE
IdAttore | Contatore | Chiave primaria |
Cognome | Testo | Richiesto: sì Consenti lunghezza zero: no Indicizzato: sì |
Nome | Testo | Richiesto: sì Consenti lunghezza zero: no Indicizzato: sì |
DataNascita | Data/ora | Etichetta: Data di nascita |
Nazione | Testo | |
OscarVinti | Numerico | Etichetta: Oscar vinti Valore predefinito: 0 Valido se: >=0 AND <=5 |
Foto | Oggetto OLE | |
Notizie | Memo |
REGISTA
IdRegista | Contatore | Chiave primaria |
Cognome | Testo | Richiesto: sì Consenti lunghezza zero: no Indicizzato: sì |
Nome | Testo | Richiesto: sì Consenti lunghezza zero: no Indicizzato: sì |
DataNascita | Data/ora | Etichetta: Data di nascita |
Nazione | Testo | |
OscarVinti | Numerico | Etichetta: Oscar vinti Valore predefinito: 0 Valido se: >=0 AND <=5 |
FILM
IdFilm | Contatore | Chiave primaria |
Titolo | Testo | Richiesto: sì Consenti lunghezza zero: no Indicizzato: sì |
Anno | Numerico | >=1895 AND <=2013 |
Durata | Numerico | >=0 |
Giudizio | Numerico | >=1 AND <=10 |
Trama | Memo | |
OscarVinti | Numerico | Etichetta: Oscar vinti Valore predefinito: 0 Valido se: >=0 AND <=11 |
RegistaId | Numerico | Etichetta: Regista |
AttoreId | Numerico | Etichetta: Attore protagonista |
Query
Gli attori degli Stati Uniti
1 2 3 4 |
SELECT ATTORE.Nome, ATTORE.Cognome, ATTORE.DataNascita, ATTORE.OscarVinti FROM ATTORE WHERE ATTORE.Nazione = "USA" ORDER BY ATTORE.Cognome, ATTORE.Nome; |
I film con giudizio massimo
1 2 3 4 5 |
SELECT FILM.Titolo, FILM.Anno, FILM.Durata, FILM.OscarVinti, REGISTA.Nome AS [Nome regista], REGISTA.Cognome AS [Cognome regista] FROM FILM INNER JOIN REGISTA ON FILM.RegistaId = REGISTA.IdRegista WHERE Film.Giudizio = 5 ORDER BY Film.Titolo; |
La filmografia dei registi
1 2 3 4 |
SELECT REGISTA.Nome, REGISTA.Cognome, REGISTA.Nazione, FILM.Titolo, FILM.Anno, FILM.OscarVinti, FILM.Giudizio FROM FILM INNER JOIN REGISTA ON FILM.RegistaId = REGISTA.IdRegista ORDER BY REGISTA.Cognome, REGISTA.Nome, FILM.Anno; |
I registi, non degli Stati Uniti, che hanno diretto un film con
- anno di uscita tra il 1995 e il 2010
- vittoria all’Oscar
- giudizio tra 4 e 5.
1 2 3 4 5 6 |
SELECT REGISTA.Nome, REGISTA.Cognome, REGISTA.Nazione, FILM.Titolo, FILM.Anno, FILM.OscarVinti, FILM.Giudizio FROM FILM INNER JOIN REGISTA ON FILM.RegistaId = REGISTA.IdRegista WHERE (REGISTA.Nazione <> "USA") AND (FILM.Anno BETWEEN 1995 AND 2010) AND (FILM.OscarVinti > 0) AND ((FILM.Giudizio = 4) OR (FILM.Giudizio = 5)) ORDER BY REGISTA.Cognome, REGISTA.Nome, FILM.Anno; |
La classifica dei registi per numero di Oscar vinti
1 2 3 |
SELECT REGISTA.Nome, REGISTA.Cognome, REGISTA.DataNascita, REGISTA.Nazione, REGISTA.OscarVinti FROM REGISTA ORDER BY REGISTA.OscarVinti DESC, REGISTA.Cognome, REGISTA.Nome; |
Note
- I nomi appaiono prima dei cognomi ma i record sono ordinati prima per cognome e poi per nome
- Le classifiche sono ordinate in modo decrescente rispetto al campo numerico (Oscar vinti, film vincenti, …).
Se aggiungi una tabella NAZIONI e le chiavi esterne per la Nazionalità nelle tabelle ATTORE, FILM, REGISTA
- Elenco delle nazioni
- Numero di nazioni
- …
- Elenco degli attori
- Elenco degli attori con film (per anno)
- Elenco dei registi
- Elenco degli registi con film (per anno)
- Elenco dei film
123SELECT Titolo, Anno, OscarVinti AS [Oscar vinti], NAZIONI.Nome AS NazionalitàFROM FILM INNER JOIN NAZIONI ON FILM.NazioneId = NAZIONI.IdNazioneORDER BY Titolo; - Elenco dei film per numero di Oscar
123SELECT OscarVinti AS [Oscar vinti], Titolo, Anno, NAZIONI.Nome AS NazionalitàFROM FILM INNER JOIN NAZIONI ON FILM.NazioneId = NAZIONI.IdNazioneORDER BY OscarVinti DESC, Titolo; - Numero totale di Oscar nei film
- Numero medio, massimo di Oscar nei film