1

我在想,關係代數中的自然連接操作是否是關聯的。我的意思是,下面的等式是正確的嗎?自然連接的關聯性

(S1 NATURAL JOIN S2) NATURAL JOIN S3 = S1 NATURAL JOIN (S2 NATURAL JOIN S3) 

它看起來與我直觀相關,但我不確定。

感謝

回答

1

inner join只返回匹配on條件的行。對右側或左側表格沒有特別處理。所以inner join是聯想。

A natural join是所有具有相同名稱的列上的inner join。由於inner join是聯想,因此是natural join

+0

感謝您的回答 – yrazlik 2013-04-05 23:06:55

+0

自然連接不是內連接(theta-join)。 inner/theta連接爲輸入中的每列輸出一列;這是一個受限制的交叉連接。自然連接爲輸入中的每個列名輸出一列;所以當列名共享時,它輸出的列較少。無論如何,在代數自然連接輸入任何一對關係,但內部/ theta連接只有輸入關係值是未定義的,當有共同的列名。在SQL中有類似但不同的區別; SQL連接輸入關係值和(關聯)名稱。 – philipxy 2016-06-16 12:00:28