Swappa : Uni / Basi di dati - Esercizio 2
Creative Commons License

Torna alla pagina di Basi di Dati


 :: Basi di dati - Esercizio 2 ::

Query: Radio


RADIO (Codice, Nome, Frequenza, Luogo)
PROGRAMMA (Codice, Nome, Conduttore, FasciaOraria, Durata, Tipo, CodiceRadio)


Domanda 1
Determinare i nomi delle radio che trasmettono programmi non musicali nella fascia oraria del mattino e della sera, ma non nella fascia del pomeriggio.

MAT := ΠCodiceRadioTipo≠'Musicale' ∧ FasciaOraria='Mattina' PROGRAMMA)

SER := ΠCodiceRadioTipo≠'Musicale' ∧ FasciaOraria='Sera' PROGRAMMA)

POM := ΠCodiceRadioTipo≠'Musicale' ∧ FasciaOraria='Pomeriggio' PROGRAMMA)

COD_RIS := (MAT ⋂ SER) - POM

ΠNome (RADIO ⋈ Codice=CodiceRadio COD_RIS)


Domanda 2
Determinare per ogni radio il codice del programma di durata minima.

PROG := ΠCodice, Durata, CodiceRadio (PROGRAMMA)

PROG' := ρ C',D',CR' ← Codice,Durata,CodiceRadio (PROG)

ΠCodice, CodiceRadio (PROG) -
ΠCodice, CodiceRadio (PROG ⋈ CodiceRadio=CR' ∧ Durata>D' (PROG'))


Domanda 3
Determinare i nomi delle radio che trasmettono almeno due programmi non musicali.

NO_MUS := ΠCodice, CodiceRadioTipo≠'Musicale' PROGRAMMA)

NO_MUS' := ρ C',CR' ← Codice,CodiceRadio (NO_MUS)

COD_RIS := ΠCodiceRadio (NO_MUS ⋈ CodiceRadio=CR' ∧ Codice≠C' NO_MUS')

ΠNome (RADIO ⋈ Codice=CodiceRadio COD_RIS)


Domanda 4
Determinare i nomi delle radio che non hanno alcun programma musicale

MUS := ΠCodiceRadioTipo='Musicale' PROGRAMMA)

NO_MUS := ΠCodice (RADIO) - ρ Codice ← CodiceRadio (MUS)

ΠNome (RADIO ⋈ NO_MUS)


Torna alla pagina di Basi di Dati

(Printable View of http://www.swappa.it/wiki/Uni/EsBDD02)