为什么内连接和外连接都被称为?

use*_*794 9 sql join

我理解内部和外部连接的工作.但在这种情况下,内在/外在的含义是什么?内联的内心是什么?外连接的外部是什么?

最好的问候,维沙尔

Vin*_*eet 7

还有一个观点:

最早的连接的简单实现之一使用嵌套循环.

  1. 对于内连接,外循环将迭代任何关系,内循环将迭代其他关系,并在连接列匹配时创建复合行.因此,输出行将在内部循环中创建并填充.因此,这称为INNER JOIN.

  2. 当我们希望保留左侧关系\ table中的所有行时,外部循环将必须在左表上进行迭代,并且行不仅会添加到内部循环中以匹配案例,而且还会添加到外部循环中以进行非匹配case(其中左表在右表中没有基于连接列的匹配行).在这种情况下,左表需要转到外部循环,因此称为LEFT OUTER JOIN.

  3. 当我们想要保留右侧关系\ table中的所有行时,右表将需要进入外部循环,因此它被称为RIGHT OUTER JOIN.

  4. 当我们希望保留两个表的非匹配行时,在最简单的方法中,我们将有两个嵌套循环.一个嵌套循环将在外循环中保留表,而另一个嵌套循环在外循环中具有右表.因此,两个表都转到外部循环,因此它被称为FULL OUTER JOIN.

添加关于嵌套循环实现的论文的链接:http://www.cs.berkeley.edu/~brewer/cs262/3-selinger79.pdf