Das Relationenmodell 1
Operationen im Relationenmodell
Relationale Objekte und Operationen
Relationen und Attribute Attribute mit Wertebereichen Eine n-stellige Relation Rn ist eine Teilmenge des kartesischen Produkts
Relationen und Attribute (2) n-stellige Relation Attribute sind Spaltenüberschriften Degree = Anzahl der Spalten (Grad) Domäne = Wertebereich Tupel = Zeile
Relationen und Attribute (3)
Relationen und Attribute (4) M1 = { Tholler, Falk, Müller, Franz, Sündbald, Wal, Tisch } M2 = { Andreas, Bernhardt, Tobias, Helga, Hannelore, Birgit, Hartmut } M3 = { w, m } ...... KUNDEN(Kun_Nr, Nachname, Vorname, Geschlecht, Ort, Strasse, TelefonNr). Die Attribute sind die Spaltennamen. Ein Tupel ist eine Zeile der Tabelle. Der Degree (Grad) ist die Anzahl der Spalten, also in unserem Beispiel 7. Das kartesische Produkt hat 75 x 3 x 2 Elemente.
Eigenschaften von Relationen Eine Relation hat keine doppelten Tupel, d.h. Zeilen mit komplett den gleichen Werten werden unterdrückt. Die Tupelreihenfolge ist nicht definiert. Informationen werden ausschließlich durch Werte dargestellt. Die Attribute sind atomar, d.h. einfache Datentypen. Für die Attribute sind NULL-Werte erlaubt (z.B. Ein unbekannter Wohnort)
B heißt Selektionsprädikat Abbildung B heißt Selektionsprädikat SelektionB(R) ist wieder eine Relation. Selektionsprädikate enthalten: Attribute einer Relation und Konstanten <Attribut > <Vergleichsoperator> < Konstante> <Attribut > <Vergleichsoperator> < Attribut> Vergleichsoperatoren =, <, <=, >,>= und <> und != ungleich) die logischen Operatoren UND, ODER und NICHT eine beliebige Zusammensetzung aus den obengenannten Möglichkeiten
Selektion (2)
Selektion (3)
Projektion (1)
Projektion (2)
Kartesisches Produkt
Natural Join Mit dem Zeichen ⋈ abgekürzt.
Natural Join Erstellen Sie eine Liste, in der alle Angestellten mit den zugehörigen Abteilungsdaten aufgelistet sind! Angestellte ⋈ Abteilungen =
Verlustfreie Join-Operationen Ein Natural-Join zwischen R und S heißt verlustfrei, wenn alle Tupel von R und S am Verbund teilnehmen. Die inverse Operation Projektion erzeugt dann wieder R und S aus dem Join-Ergebnis. Angestellte ⋈ Abteilungen ist verlustfrei, da jeder Angestellte zu einer Abteilung gehört. Kunden ⋈ Auftraege ist nicht verlustfrei, da es Kunden gibt, die keine Auftraege erteilt haben.
Eigenschaften der Join-Operationen Die Attribute, über die der Join ausgeführt wird (Join-Attribute), müssen keine Schlüsselattribute sein Die Join-Attribute der beiden betroffenen Relationen müssen nicht den gleichen Namen haben (z.B. beim Gleichverbund, Equi Join) alle Join-Operatoren außer Natural Join Natural Join: müssen gleich heißen für Äquivalenzbedingung Jede Relation kann mit einer anderen Relation gejoint werden (auch mit sich selber) Die den Join-Attributen zugrunde liegenden Wertebereiche müssen gleich sein. Der Join-Operationen lassen sich aus Selektion, Projektion und kartesischem Produkt ableiten.
Klassische Mengenoperationen
Klassische Mengenoperationen (2) UNION