Abacus: traccia 2° prova maturità 2011 svolta

Di Marta Ferrucci.

Riceviamo e pubblichiamo la traccia di Abacus sperimentale svolta da un utente. Grazie!

> Traccia Abacus sperimentale
Punto I
Punto 2
Punto 3
Punto 4

1. Visualizzare l'elenco di tutti gli esemplari di fauna suddivisi per specie presenti nei vari parchi

SELECT P.idParco , P.Indirizzo , S.Specie , F.Fauna

FROM ParcoNaturale P JOIN EsemplariFauna E ON P.idParcoNaturale = E.idParcoNaturale

JOIN SpecieFauna S ON S.idSpecieFauna = E.idSpecieFauna

JOIN Fauna F ON S.idFauna = S.idFauna

WHERE E.DataMorte IS NOT NULL

GROUP BY P.idParco , P.Indirizzo , S.Specie , F.Fauna

2. Visualizzare tutti gli esemplari a rischio di estinzione

SELECT P.idParco , P.Indirizzo , S.Specie , F.Fauna , E.idEsemplare , E.NomeEsemplare

FROM ParcoNaturale P JOIN EsemplariFauna E ON P.idParcoNaturale = E.idParcoNaturale

JOIN SpecieFauna S ON S.idSpecieFauna = E.idSpecieFauna

JOIN Fauna F ON S.idFauna = S.idFauna

WHERE S.Estinzione = 1 and E.DataMorte IS NOT NULL

3. Calcolare e visualizzare il numero totale di nascite di un certo esemplare nell'arco di un anno di monitoraggio

(Esempio per scoiattoli nell'anno 2010)

SELECT S.Specie , F.Fauna , COUNT(*) AS TOT_NASCITE

FROM EsemplariFauna E JOIN SpecieFauna S ON S.idSpecieFauna = E.idSpecieFauna

JOIN Fauna F ON S.idFauna = S.idFauna

WHERE YEAR(E.DataNascita) = '2010' AND S.Specie = 'Scoiattolo'

GROUP BY S.Specie , F.Fauna

4. Calcolare e visualizzare il numero totale di diverse specie di arbusti presenti nei vari parchi della regione

SELECT P.idParco , P.Indirizzo , S.Specie , COUNT(*) AS TOT_ARBUSTI

FROM ParcoNaturale P JOIN EsemplariFlora E ON P.idParcoNaturale = E.idParcoNaturale

JOIN SpecieFlora S ON S.idSpecieFlora = E.idSpecieFlora

JOIN Flora F ON S.idFlora = S.idFlora

WHERE F.OridneAppartenenza='Arbusto'

GROUP BY P.idParco , P.Indirizzo , S.Specie

5. Visualizzare quante specie diverse di pino sono presenti in ciascun parco

SELECT P.idParco , P.Indirizzo , S.Specie , COUNT(*) AS TOT_PINI_DISTINTI

FROM ParcoNaturale P JOIN EsemplariFlora E ON P.idParcoNaturale = E.idParcoNaturale

JOIN SpecieFlora S ON S.idSpecieFlora = E.idSpecieFlora

JOIN Flora F ON S.idFlora = S.idFlora

WHERE S.Specie ='Pino'

GROUP BY P.idParco , P.Indirizzo , S.Specie , E.SpecieFlora