Esercizio 1
Dato il seguente schema relazionale:
Libro(CodLibro, Titolo, Autore, Genere, Costo, CasaEditrice)
CasaEditrice(Nome,Indirizzo Sede,AnnoNascita)
Autore(CodAutore, Cognome, Nome, DataNAscita)
Esprimere in SQL la sequente interrogazione:
l'elenco degli autori(con codiceAutore,Nome e Cognome) e il numero di libri che hanno scritto; ordinati a partire dallo scrittore più prolifico.
SELECT L.Autore, L.codiceAutore, L.Nome, L.Cognome, SUM(CodLibro) AS Libri
FROM Libro L JOIN AUTORE A ON L.Autore = A.CodAutore
ORDER BY Libri DESC
__________________________________________________ __________________________________________________ ________________
Esercizio 2
Dato il seguente schema relazionale:
Libro(CodLibro, Titolo, Autore, Genere, Costo, CasaEditrice)
CasaEditrice(Nome,Indirizzo Sede, AnnoNascita)
Autore(CodAutore, Cognome, Nome, DataNAscita)
Esprimere in SQL la sequente interrogazione:
La media (per ogni casa editrice) del costo dei libri di genere "fantasy" pubblicati; ordinati per la casa editrice più economica
SELECT AVG(Costo)
FROM Libro L JOIN CasaEditrice C ON L.CasaEditrice = C.Nome
GROUP BY L.CasaEditrice, L.Costo ASC
__________________________________________________ __________________________________________________ ________________
Esercizio 3
Dato il seguente schema relazionale:
Libro(CodLibro, Titolo, Autore, Genere, Costo, CasaEditrice)
CasaEditrice(Nome,Indirizzo Sede,AnnoNascita)
Autore(CodAutore, Cognome, Nome, DataNAscita)
Esprimere in SQL la sequente interrogazione nidificata:
L'elenco dei titoli dei libri scritti dagli autori più giovani, ordinati per costo
SELECT Titolo
FROM Libro
WHERE Autore = ( SELECT CodAutore
ORDER BY Costo FROM AUTORE
WHERE DataNascita = ( SELECT MIN(DataNascita)
FROM Autore ) )