Relationenalgebra und SQL: Kartesisches Produkt

Aus Wikibooks
Zur Navigation springen Zur Suche springen
Wikibooks buchseite.svg Zurück zu "Durchschnitt" | One wikibook.svg Hoch zu "Inhaltsverzeichnis" | Wikibooks buchseite.svg Vor zu "Projektion"


Das Kreuzprodukt R × S ist eine Operation sehr ähnlich dem Kartesischen Produkt aus der Mengenlehre[1].

Das Resultat des Kreuzprodukts ist die Menge aller Kombinationen der Tupel aus R und S, d.h. jede Zeile der einen Tabelle wird mit jeder Zeile der anderen Tabelle kombiniert. Wenn alle Merkmale (Spalten) verschieden sind, so umfasst die Resultatstabelle die Summe der Merkmale der Ausgangstabellen. Die Anzahl Tupel (Zeilen) im Resultat ist die Multiplikation der Anzahl Zeilen der Ausgangstabellen.

Definition[Bearbeiten]

Zwei beliebige Relationen und sind gegeben. Das kartesische Produkt ist definiert durch

Beispiel[Bearbeiten]

R:
A B C D
1 2 3 4
4 5 6 7
7 8 9 0
S:
E F G
1 2 3
7 8 9
R × S:
A B C D E F G
1 2 3 4 1 2 3
4 5 6 7 1 2 3
7 8 9 0 1 2 3
1 2 3 4 7 8 9
4 5 6 7 7 8 9
7 8 9 0 7 8 9

SQL[Bearbeiten]

SELECT * FROM R, S;

oder

SELECT * FROM R CROSS JOIN S;

  1.  Kartesisches Produkt


Wikibooks buchseite.svg Zurück zu "Durchschnitt" | One wikibook.svg Hoch zu "Inhaltsverzeichnis" | Wikibooks buchseite.svg Vor zu "Projektion"