2 个表之间的连接类型示例 - 自然连接

Types of Joins between 2 tables example - Natural Join

我附上了我正在努力解决的问题。到目前为止,对于这个问题,我已经计算出每种类型的连接

的元组数量

我得到:R4 = 15(完全连接,所以第一个有 10 个 table,第二个有 5 个) R3=?,R2=5,R1=10。

正确答案是第四个要点,但我不确定如何获得它。任何帮助,将不胜感激!

只需单独考虑每个连接,您可以获得每个连接的最小和最大行数 return。

R1。 TBL1 左自然外连接 TBL2

所以 TBL1 有 10 行,因此将 return编辑 10 行,无论 TBL2

中有什么,都没有其他可能性

R2。 TBL1 右自然外连接 TBL2

与上面类似,TBL2 有 5 行,因此 return 编辑了 5 行。没有其他可能性。

R3。 TBL1 自然连接 TBL2

在没有连接类型的情况下('INNER',LEFT,'RIGHTorFULL) on the JOIn MySQL (and all other DBMS as far as I know) will interpret anINNER JOIN`,因此尽可能多的行数returned 是 5,因为 TBL2 中只有 5 行,如果没有匹配项,则可以 return 0 行。

R4。 TBL1 自然全外连接 TBL2

如果两者之间没有共同的值,这将 return 15 行,或者如果 TBL2 中的所有值都在 TBL1 中,则只有 10 行将 returned。

所以你有

R1. 10
R2. 5
R3. 0-5
R4 10-15

所以按照行数降序重新排列你得到:

R4 10-15
R1. 10
R2. 5
R3. 0-5

你的答案是什么

R4 >= R1 > R2 >= R3