题解 | #查找所有已经分配部门的员工的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练习。接下来是算法的练习