Uni.TemaEsame23012007 History
Show minor edits - Show changes to output
January 14, 2008, at 06:48 PM
by
- Changed lines 8-11 from:
'''CAVALLO(Nome, Razza, DataNascita, Colore, NomeMadre, NomePadre)'''\\
'''FANTINO(CF, Nome, Cognome, DataNascita)'''\\
'''PARTECIPAZIONEGARA(NomeGara, NomeCavallo, CFFantino, PosizioneClassifica)'''
'''FANTINO(CF, Nome, Cognome, DataNascita)'''\\
'''PARTECIPAZIONEGARA(NomeGara, NomeCavallo, CFFantino, PosizioneClassifica)'''
to:
'''CAVALLO({+Nome+}, Razza, DataNascita, Colore, NomeMadre, NomePadre)'''\\
'''FANTINO({+CF+}, Nome, Cognome, DataNascita)'''\\
'''PARTECIPAZIONEGARA({+NomeGara, NomeCavallo, CFFantino+}, PosizioneClassifica)'''
'''FANTINO({+CF+}, Nome, Cognome, DataNascita)'''\\
'''PARTECIPAZIONEGARA({+NomeGara, NomeCavallo, CFFantino+}, PosizioneClassifica)'''
January 14, 2008, at 06:45 PM
by
- Added lines 1-82:
(:Title Basi di Dati temi d'esame:)\\
%center bgcolor=#fff0f5 border='1px solid #cccccc' font-size=12pt padding=3px define=soluzione%
[[Torna alla pagina di Basi di Dati->Basi di Dati]]
----
%center%%bgcolor=#d9e4f2 font-size=11pt padding=4px padding-left=50px padding-right=50px% 23 gennaio 2007
'''CAVALLO(Nome, Razza, DataNascita, Colore, NomeMadre, NomePadre)'''\\
'''FANTINO(CF, Nome, Cognome, DataNascita)'''\\
'''PARTECIPAZIONEGARA(NomeGara, NomeCavallo, CFFantino, PosizioneClassifica)'''
!!!%blue%SQL
!!%red% Determinnare io nome delle gare nelle quali unb cavallo di colore bianco si è classificato tra i primi 10%black%\\
SELECT NomeGara\\
FROM Cavallo JOIN Partecipa ON Nome = NomeCavallo\\
WHERE Colore='Bianco' AND \\
PosizioneClassifica=1
!!%red% Determinare il CF del fantino che ha vinto il maggior nimero di gare%black%\\
SELECT DISTINCT CFFantino\\
FROM Partecipazione\\
WHEREPosizioneClassifica=1\\
GROUP BYCFFantino\\
HAVING COUNT(*) >= ALL
-->SELECT COUNT(PosizioneClassifica)
-->FROM Partecipazione
-->WHERE PosizioneClassifica=1
-->GROUP BY CFFantino
!!!%blue%ALGEBRA
!!%red% Determinare le coppie NomeCavallo-CFFantino che non hanno mai vinto una gara%black%\\
''Proiietto tutte le coppie''
%soluzione%TUTTI:=π'_NomeCavallo, CFFantino_' (PARTECIPAZIONE)
''Ora seleziono i vincitori''
%soluzione%V:=π'_NomeCavallo, CFFantino_'(σ'_PosiozioneClassifica=1_' PARTECIPAZIONE)
''Ora tutti- quelli che hanno vinto''
%soluzione%RIS:=TUTTI - V
!!%red% Determinare il nome dei fantini che hanno vinto almeno 2 gare%black%\\
''proietto nome cavallo cF del fantino e nome gara delle gare vincenti''
%soluzione%P1:=π'_NomeCavallo, CFFantino, NomeGara_'(σ'_PosizioneClassifica=1_'PARTECIPAZIONE)
''ne faccio una copia''
%soluzione%P2:=ρ'_NC, CFF,NG<- NomeCavallo, CFFantino, NomeGara_'(P1)
''Join tra P1 e P2 per trovare il fantino e il cavallo che hanno vinto almeno 2 gare''
%soluzione%R:=π'_CFF_'(P1 |X|'_NC=NomeCavallo ^ CFF=CFFantino ^ NG<>NomeGara_'P2)
''Join con fantino per ottenere il nome''
%soluzione%RIS:=π'_Nome_'(R |X| '_CF=CFF_'FANTINO)
%center bgcolor=#fff0f5 border='1px solid #cccccc' font-size=12pt padding=3px define=soluzione%
[[Torna alla pagina di Basi di Dati->Basi di Dati]]
----
%center%%bgcolor=#d9e4f2 font-size=11pt padding=4px padding-left=50px padding-right=50px% 23 gennaio 2007
'''CAVALLO(Nome, Razza, DataNascita, Colore, NomeMadre, NomePadre)'''\\
'''FANTINO(CF, Nome, Cognome, DataNascita)'''\\
'''PARTECIPAZIONEGARA(NomeGara, NomeCavallo, CFFantino, PosizioneClassifica)'''
!!!%blue%SQL
!!%red% Determinnare io nome delle gare nelle quali unb cavallo di colore bianco si è classificato tra i primi 10%black%\\
SELECT NomeGara\\
FROM Cavallo JOIN Partecipa ON Nome = NomeCavallo\\
WHERE Colore='Bianco' AND \\
PosizioneClassifica=1
!!%red% Determinare il CF del fantino che ha vinto il maggior nimero di gare%black%\\
SELECT DISTINCT CFFantino\\
FROM Partecipazione\\
WHEREPosizioneClassifica=1\\
GROUP BYCFFantino\\
HAVING COUNT(*) >= ALL
-->SELECT COUNT(PosizioneClassifica)
-->FROM Partecipazione
-->WHERE PosizioneClassifica=1
-->GROUP BY CFFantino
!!!%blue%ALGEBRA
!!%red% Determinare le coppie NomeCavallo-CFFantino che non hanno mai vinto una gara%black%\\
''Proiietto tutte le coppie''
%soluzione%TUTTI:=π'_NomeCavallo, CFFantino_' (PARTECIPAZIONE)
''Ora seleziono i vincitori''
%soluzione%V:=π'_NomeCavallo, CFFantino_'(σ'_PosiozioneClassifica=1_' PARTECIPAZIONE)
''Ora tutti- quelli che hanno vinto''
%soluzione%RIS:=TUTTI - V
!!%red% Determinare il nome dei fantini che hanno vinto almeno 2 gare%black%\\
''proietto nome cavallo cF del fantino e nome gara delle gare vincenti''
%soluzione%P1:=π'_NomeCavallo, CFFantino, NomeGara_'(σ'_PosizioneClassifica=1_'PARTECIPAZIONE)
''ne faccio una copia''
%soluzione%P2:=ρ'_NC, CFF,NG<- NomeCavallo, CFFantino, NomeGara_'(P1)
''Join tra P1 e P2 per trovare il fantino e il cavallo che hanno vinto almeno 2 gare''
%soluzione%R:=π'_CFF_'(P1 |X|'_NC=NomeCavallo ^ CFF=CFFantino ^ NG<>NomeGara_'P2)
''Join con fantino per ottenere il nome''
%soluzione%RIS:=π'_Nome_'(R |X| '_CF=CFF_'FANTINO)