老师,请问我的理解对不对?

来源:4-3 数据操作语言:表连接查询(二)

Heijyu

2021-11-15 11:17:14

在用union语句链接两个查询结果时,最简单的保证双方查询条数一致的方法就是看select字段,比如下面的这段代码里,我要不就都加上d.deptno,要不就都不要,其实都能显示出结果。

#外链接练习2: 查询每个部门的名称和部门的人数?如果没有部门的员工,部门名称用null表示?
(SELECT d.dname, d.deptno——一起要或者不要, COUNT(e.deptno)
FROM t_dept d LEFT JOIN t_emp e
ON d.deptno = e.deptno
GROUP BY d.deptno)
UNION
(SELECT d.dname, d.deptno——一起要或者不要,COUNT(*)
FROM t_dept d RIGHT JOIN t_emp e
ON d.deptno = e.deptno
GROUP BY  d.deptno);

相关截图:

我的员工表和部门表信息如下截图;

https://img.mukewang.com/climg/6191d0e2091cbc0a11260660.jpg

https://img.mukewang.com/climg/6191d0f009e75f1d06500230.jpg


相关截图:

写不写部门编号的查询结果截图分别如下;

https://img.mukewang.com/climg/6191d11e092f5db906320304.jpg


https://img.mukewang.com/climg/6191d13509fab3b205040302.jpg

写回答

1回答

好帮手慕小小

2021-11-15

同学你好。同学的理解是正确的。

祝学习愉快~

0

0 学习 · 9886 问题

查看课程