SQL各种连接
连接类型 |
定义 |
|
Inner Join |
内连接是最常见的一种连接,它也被称为普通连接,只连接匹配的行(仅对满足连接条件的CROSS中的列)。它又分为等值连接(连接条件运算符为"=")和不等值连接(连接条件运算符不为"=",例如between...and)。 |
|
Outer Join |
Full Outer Join |
包含左、右两个表的全部行,不管另外一边的表中是否存在与它们匹配的行。 |
Left Outer Join |
包含左边表的全部行(不管右边的表中是否存在与它们匹配的行),以及右边表中全部匹配的行 |
|
Right Outer Join |
包含右边表的全部行(不管左边的表中是否存在与它们匹配的行),以及左边表中全部匹配的行 |
|
Cross Join |
笛卡尔乘积(所有可能的行对),交叉连接用于对两个源表进行纯关系代数的乘运算。它不使用连接条件来限制结果集合,而是将分别来自两个数据源中的行以所有可能的方式进行组合。 |
|
Appendix |
Natural Join |
自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉;而等值连接不会去掉重复的属性列。 |
Self Join |
某个表和其自身连接,连接方式可以是内连接,外连接,交叉连接 |
新建表A
新建表B
Inner Join:取AB集合的交集
Full Outer Join:取AB的并集
Left Outer Join:左外关联
Right Outer Join:右外关联
Cross Join:笛卡尔积
Natural Join:自然连接是一种特殊的等值连接