LEFT JOIN & RIGHT JOIN 外联查询
当JOIN的条件不匹配时,如果我们需要保留JOIN左边表格的信息时,使用LEFT JOIN;若我们需要保留JOIN右边表格信息时,使用RIGHT JOIN
# 如emp表中张三是一个零时工, deptno为NULL, 我们希望保留NULL
# 查询所有员工和其对应的部门名称
SELECT
e.ename, d.dname
FROM t_emp e LEFT JOIN t_dept d ON e.deptno=d.deptno;
# 也可以交换JOIN表格的顺序,换成 右外连接 效果相同
SELECT
e.ename, d.dname
FROM t_dept d RIGHT JOIN t_emp e ON e.deptno=d.deptno; # 查询每个部门的名称和人数, 有个部门OPERATIONS,编号40, 没有人,我们也希望显示
SELECT
d.dname , COUNT(e.deptno)
FROM t_emp e RIGHT JOIN t_dept d
ON e.deptno=d.deptno
GROUP BY d.deptno;UNION 关键字
Last updated