为什么要使用外连接
- 如果说陈浩是一名临时人员, 没有固定的部门]编制,那么我们想查询每名员工和他的部门门名称,用内连接就会漏掉陈浩,所以要引入外连接的语法才能解决这个问题
外连接简介
- 外连接与内连接的区别在于,除了符合条件的记录之外,结果集中还会保留不符合条件的记录。
SELECT
e.empno, e.ename, d.dname
FROM
t_emp e
LEFT JOIN t_dept d ON e.deptno = d.deptno;
左连接和右连接
- 左外连接就是保留左表所有的记录,与右表做连接。如果右表有符合条件的记录就与左表连接。如果右表没有符合条件的记录,就用
NULL
与左表连接。右外连接也是如此。
UNION关键字
- UNION关键字可以将多个查询语句的结果集进行合并
(查询语句) UNION (查询语句) UNION (查询语句)...
- 前提是字段的个数和名称都要相同
`
练习
- 查询每个部门门的名称和部门门的人数?
select d.dname,count(e.deptno)
from t_dept d left join t_emp