Hello,
ob wir syntaktisch über das selbe sprechen weiß ich nicht, aber ich sage dir mal meine Interpretation:
Attr(R) ∩ Attr(S) = ∅ ----> R |X| S =R ×S
Wenn die Schnittmenge der Attribute aus R und S leer ist (d.h. es gibt keine Attribute, die sowohl in Menge R als auch und Menge S vorkommen - wichtig: Attribute, nicht Attributausprägungen), dann ist der Natural Join aus R und S das selbe wie das Kreuzprodukt aus R und S.
Beispiel:
Bestehe R aus den Attributen A, B und S aus C und D, dann sind folgendes mögliche Ausprägungen der Relationen R und S
R | A | B
-----------
| 1 | 2
| 3 | 4
S | C | D
----------
| W | X
| Y | Z
Der Natural Join dieser beiden ergibt:
RxS | A | B | C | D
--------------------
| 1 | 2 | W | X
| 1 | 2 | Y | Z
| 3 | 4 | W | X
| 3 | 4 | Y | Z
Das ist so, weil es keine gemeinsamen Attribute gibt, über die eine Zusammenführung gemacht werden könnte.
Attr(R) = Attr(S) ----> R |X| S =R ∩S
Hier ist es umgekehrt: Wenn die Attribute von R mit den Attributen von S identisch sind, dann gilt für den Natural Join aus R und S, dass er alle Elemente enthält die sowohl in R als auch in S sind.
R | A | B
---------
| 1 | 2
| 3 | 4
| 5 | 6
S | A | B
----------
| 1 | 2
| 3 | 4
| 7 | 8
Der Natural Join läuft auf der Basis R.A = S.A und R.B = S.B, damit:
RxS | A | B
------------
| 1 | 2
| 3 | 4
MfG
Rouven
-------------------
sh:| fo:} ch:? rl:( br:& n4:{ ie:| mo:} va:) js:| de:] zu:| fl:( ss:) ls:& (SelfCode)
When the only tool you've got is a hammer, all problems start to look like nails.