Cvičení 5

Témata cvičení

Průběh cvičení

Dobrovolný úkol z minula

Někteří z vás ukázali své návrhy řešení úkolu minula. Prošli jsme si jejich výhody a nevýhody.

Úkoly

  1. Máte k dispozici tabulky pet_owner a animal. Napište dotaz, který modeluje relační dělení relace pet_owner relace animal. Co bude obsahovat výsledek?
  2. Zkuste dokázat následující (* označuje vztahy probané na cvičení):
    • (*) Asociativita a
    • Komutativita a
    • (*) Distributivita přes (a duální)
    • Absorpce a
    • (R1\R2) ∩ (R2\R1) = ∅
    • R1 ∩ R2 = R2 \ (R2\R1)
    • pro R1 ⊆ R2 platí R1 = R2 \ (R2\R1)
    • ΠS(R) = R pro R nad schématem S
    • Π(∅) = ∅ a Π(R) = {∅} pro R ≠ ∅.
    • ΠS(R1R2) = ΠS(R1) ∪ ΠS(R2)
    • σΘ1(σΘ2(R)) = σΘ2(σΘ1(R))
    • σΘ(σΘ(R)) = σΘ(R)
    • (*) σΘ(R1R2) = σΘ(R1) ∪ σΘ(R2)
    • σΘ(R1R2) = σΘ(R1) ∩ σΘ(R2) = σΘ(R1) ∩ R2 = R1 ∩ σΘ(R2)
    • σΘ(R1\R2) = σΘ(R1) \ R2 = σΘ(R1) \ σΘ(R2)
    • R ⋈ R = R
    • R ⋈ R′ = R′ ⋈ R
    • (RR′) ⋈ R″ = R ⋈ (R′⋈R″)
    • R ⋈ ∅ = ∅
    • Pokud y ∈ S ∩ S, pak σy = d(RR′) = σy = d(R) ⋈ σy = d(R′)
    • Pokud y ∈ S a y ∉ S, pak σy = d(RR′) = σy = d(R) ⋈ R
    • R ⋈ (R′∪R″) = (RR′) ∪ (RR″) pro R nad S a R′, R nad S
    • R ⋈ (R′∩R″) = (RR′) ∩ (RR″) = R ⋈ R′ ⋈ R pro R nad S a R′, R nad S
    • R ⋈ (R′\R″) = (RR′) \ (RR″) pro R nad S a R′, R nad S