这是SQL今日一题的第16篇文章

题目描述

查找所有员工的last_name和first_name以及对应的dept_name,也包括暂时没有分配部门的员工

这题用到employees表、dept_emp表和departments表

employees表

dept_emp表

departments表

方法

select e.last_name      ,e.first_name      ,dp.dept_name from employees e left join dept_emp de on e.emp_no = de.emp_noleft join departments dp on de.dept_no = dp.dept_no

1、用两个left连接3张表,第一个left以employees为主表连接dept_emp表,这样就将所有员工包括未分配部门的信息合并在一起了(因为employees表里是记录所有员工信息的)

  • from employees e left join dept_emp de on e.emp_no = de.emp_no

2、第二个left,以刚刚连接好的employees&dept_emp表为主表连接departments表,公共字段是dept_no

  • left join departments dp on de.dept_no = dp.dept_no


猜你喜欢:

SQL今日一题(15):子查询

数据分析中会常犯哪些错误,如何解决?

数据分析应关注AARRR模型的哪些指标

泰坦尼克号数据分析

深入浅出数据分析

《吊打分析师》实战—我要租个好房

@ 作者:可乐
@ 公众号/知乎专栏/头条/简书:可乐的数据分析之路
@加个人微信:data_cola,备注:进群,拉你入 可乐的数据分析群 和各行各业的小伙伴交流探讨数据分析相关内容

微信公众号
个人微信号

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。