Relationale Algebra πAutor, Titel (BUCH AUSLEIHE (σ BUCH

Transcription

Relationale Algebra πAutor, Titel (BUCH AUSLEIHE (σ BUCH
ETH Zürich
Institut für Informationssysteme
Prof. D. Kossmann
SoSe 2007,
Datenbanksysteme,
Übungsblatt 3
Relationale Algebra
Gegeben sei das folgende relationale Schema
LESER (LSNR, NAME, VORNAME, WOHNORT,GEBDATUM)
BUCH (ISBN, TITEL, AUTOR, SEITENZAHL, VERLEGT_VON,
ERSCHEINUNGSJAHR)
VERLAG (VERLAGSNAME, VERLAGSORT)
KATEGORIE (KATEGORIENAME, ENTHALTEN_IN)
EXEMPLAR (ISBN, EXEMPLARNUMMER, REGAL, POSITION)
AUSLEIHE (LSNR, ISBN, EXEMPLARNUMMER, RÜCKGABEDATUM)
BUCH_KAT (ISBN, KATEGORIENAME)
Aufgabe 5:
Formulieren sie folgenden Anfragen in relationaler Algebra
a) Was sind die Nachnamen der Leser in Zürich?
πName (σWohnort=Zürich(LESER))
b) Welche Bücher (AUTOR, TITEL) werden von Verlagen mit Verlagsort in München,
Heidelberg oder New York verlegt?
πAutor, Titel (BUCH
verlegt_von=Verlagsname(σVerlagsort=München OR
Verlagsort=Heidelberg OR Verlagsort=New York (VERLAG)))
c) Welche Bücher (AUTOR, TITEL) hat der Leser Lemmi Schmöker ausgeliehen?
πAutor, Titel (BUCH
AUSLEIHE
Vorname=Lemmi (LESER)))
(σName=Schmöker and
d) Welche Bücher (ISBN) mit der Kategorie „Alpen“ sind nicht zugleich in der Kategorie
„Schweiz“? Unterkategorien müssen dabei nicht berücksichtigt werden!
(πISBN(σKategoriename=AlpenBUCH_KAT)) (πISBN(σKategoriename=SchweizBUCH_KAT))
e) Welche Leser (NAME, VORNAME) haben Bücher ausgeliehen, die an ihrem
Wohnort verlegt wurden?
πName, Vorname (σWohnort=Verlagsort (VERLAG
BUCH
AUSLEIHE LESER))
verlegt_von=Verlagsname
f) Welcher Leser (NAME, VORNAME) hat mindestens ein Buch ausgeliehen, das auch
Leser Lemmi Schmöker ausgeliehen hat (Lemmi Schmöker soll nicht im Ergebnis
enthalten sein)?
πL1.Name, L1.Vorname ((ρL1 Leser
ρA1 Ausleihe)
L1.lsnr <> L2.lsnr, A1.ISBN=A2.ISBN
(ρL2(σName=Schmöker and Vorname=Lemmi Leser)
ρA2 Ausleihe))
Aufgabe 6:
Drücken Sie den äußeren Join mit Hilfe der Grundoperationen der relationalen
Algebra aus.
R ⋈ S
=π R∪S
( R - πR(R ⋈ S)) ∪ (R ⋈ S)
R⋈ S
=π R∪S
Express the outer Join with the basic operators in relational algebra.
Express the outer Join with the basic operators in relational algebra.
( S - πs(R ⋈ S)) ∪ (R ⋈ S)
R ⋈ S = σp R x S
R ⋈ S
= (R ⋈ S) ∪
R ⋈ S
∪
R⋈ S

Documents pareils