定义
表和表之间的数据以纵向的方式连接在一起。之前的内连接,外连接都是以横向的方式连接在一起
例子
输出每个员工的姓名,工资,上司的姓名
select E1.ename,E1.sal,E2.ename
from emp E1
join emp E2
on E1.mgr = E2.empno
这个代码看上去没有问题,但仔细想一下,假如某个员工并没有上司,上司字段的值是null,那他就不会出现在我们最终的查询结果中,这样好像并不好,所以我们应该想办法把上司为null的也加上
select E1.ename,E1.sal,E2.ename
from emp E1
join emp E2
on E1.mgr = E2.empno
union
select ename,sal,'没有上司' from emp where emp.mgr is null