题解 | #查找所有已经分配部门的员工的last_name和first_name以及dept_no#

查找所有已经分配部门的员工的last_name和first_name以及dept_no

http://www.nowcoder.com/practice/6d35b1cd593545ab985a68cd86f28671

思路:已经分配部门的员工的emp_no是已经存在于dept_emp表中的,那么只需要取dept_emp表中的已经有的emp_no和employees表中的emp_no做个 = 判断即可。

这里我采用左连接,以左表(即dept_emp)为主表。

select e.last_name, e.first_name, d.dept_no
from dept_emp d left join employees e on d.emp_no = e.emp_no

当然,也可以使用内连接

select a.last_name, a.first_name, b.dept_no
from employees a inner join dept_emp b
on a.emp_no = b.emp_no

这里需要注意的是:是查找所有已经分配部门的员工信息,重点在于已经分配,如果使用左连接,那么必须以部门表为主表,否则就会查出未分配部门的员工信息

SQL练习 文章被收录于专栏

已完成牛客的SQL练习。接下来是算法的练习

全部评论

相关推荐

半解316:内容充实,细节需要修改一下。 1,整体压缩为一页。所有内容顶格。 2,项目描述删除,直接写个人工作量 修改完之后还需要建议,可以私聊
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务