简说Python,号主老表,Python终身学习者,数据分析爱好者,从18年开始分享Python知识,原创文章227篇,写过Python、SQL、Excel入门文章,也写过Web开发、数据分析文章,老表还总结整理了一份2022Python学习资料和电子书资源,关注后私信回复:2022 即可领取。
SQL4 查找所有已经分配部门的员工的last_name和first_name以及dept_no
我的思路: 直接通过emp_no
连接两个表就可以啦,和上一个题几乎一样。
我的题解:
select a.last_name, a.first_name, b.dept_no from (select emp_no, dept_no from dept_emp) as b join (select emp_no, last_name, first_name from employees) as a on b.emp_no = a.emp_no;
涉及知识点:
- 子查询(嵌套查询)
- 完整sql执行顺序(每天看一遍,不信记不住):
from -> where -> group by -> having -> select -> order by -> limit
提交结果:
SQL5 查找所有员工的last_name和first_name以及对应部门编号dept_no
我的思路: 直接通过emp_no
连接两个表就可以啦,和上一个题不同的是题目有说明也包括暂时没有分配具体部门的员工
,所以这里使用dept_emp表右链接employees表。
我的题解:
select a.last_name, a.first_name, b.dept_no from (select emp_no, dept_no from dept_emp) as b right join (select emp_no, last_name, first_name from employees) as a on b.emp_no = a.emp_no;
涉及知识点:
- 子查询(嵌套查询)
- 完整sql执行顺序(每天看一遍,不信记不住):
from -> where -> group by -> having -> select -> order by -> limit
提交结果: