牛客网SQL-第4题-请你查找所有已经分配部门的员工的last_name和first_name以及dept_no,未分配的部门的员工不显示

Posted 小白蛇D&A

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了牛客网SQL-第4题-请你查找所有已经分配部门的员工的last_name和first_name以及dept_no,未分配的部门的员工不显示相关的知识,希望对你有一定的参考价值。

请你查找所有已经分配部门的员工的last_name和first_name以及dept_no,未分配的部门的员工不显示

我这是第4题, 跳过哦第3题, 但是我刷牛客的SQL是按照的简易程度顺序的, 并不是按照题目顺序, 所以, 想要第3题的话, 那就等一段时间哦

employees简况如下:
在这里插入图片描述
dept_emp简况如下:
在这里插入图片描述
得到正确结果如下图:
在这里插入图片描述
我解题源码:

SELECT e.last_name,e.first_name,d.dept_no
FROM employees AS e 
INNER JOIN dept_emp AS d 
ON e.emp_no = d.emp_no;

题目解析:
我用的是内连接:INNER JOIN
其实这个题是可以用左连接,右连接和笛卡尔积(交叉连接)都可以
交叉连接:

select e.last_name, e.first_name,d.dept_no
from dept_emp d,employees e
where e.emp_no=d.emp_no;

左连接:

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;

右连接与左连接差不多, 我个人用的是内连接, 其他解题源码是在网上找的, 有过验证, 是可以的

这题的考点就是在连接问题, 所以只要理解好问题, 所有就很好解决

以上是关于牛客网SQL-第4题-请你查找所有已经分配部门的员工的last_name和first_name以及dept_no,未分配的部门的员工不显示的主要内容,如果未能解决你的问题,请参考以下文章

牛客网SQL-第九题-获取所有非manager的员工emp_no

牛客网SQL-第九题-获取所有非manager的员工emp_no

牛客网SQL-第7题-请你查找薪水记录超过15次的员工号emp_no以及其对应的记录次数t

牛客网SQL-第7题-请你查找薪水记录超过15次的员工号emp_no以及其对应的记录次数t

牛客网SQL-第7题-请你查找薪水记录超过15次的员工号emp_no以及其对应的记录次数t

牛客网SQL-第7题-请你查找薪水记录超过15次的员工号emp_no以及其对应的记录次数t