Outline
- join各类型
- on与where对join的过程影响
- 总结
join各类型
首先,对于join的各种类型的区别,不仅是各大面试中最常见的问题,也是在实际问题场景中使用频率很高的子句。我觉得无需多言,看两张图就足够了:
1、笛卡尔积(cross join,其实叫交叉积更便于自己理解)
假设集合A={a, b},集合B={0, 1, 2},则两个集合的笛卡尔积为{(a, 0), (a, 1), (a, 2), (b, 0), (b, 1), (b, 2)},反映在我们常见的表中,就是:
2、其他的join类型(inner join,left join,right join,full join)
on与where对join的过程影响
例子数据:
CREATE TABLE department
(
DepartmentID INT,
DepartmentName VARCHAR(20)
);