查找所有员工的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


©著作权归作者所有:来自51CTO博客作者mb5fe18f5282239的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. Python 内存分配时的小秘密
  2. 内卷?猝死?企业如何利用数据分析提升人效比,让员工远离“996”?
  3. LeetCode数据库篇|181超过经理收入的员工
  4. HotSpot 内存分配的主要规则
  5. 什么是 Java 对象分配率
  6. 如何将JQuery变量值分配给Laravel Blade输入
  7. Mysql_案例1:查询出每个部门工资最高的员工信息
  8. require():使用module.exports vs直接分配给“this”
  9. 为什么分配给True / False不能像我期望的那样工作?

随机推荐

  1. android:layout_gravity和android:gravit
  2. [Android] 基于 Linux 命令行构建 Androi
  3. Android 4层框架
  4. Android(安卓)打造RxBus2.x的全面详解
  5. 【Monkey】Android(安卓)Monkey autotest
  6. android中的文本框
  7. android:padding和android:margin的区别
  8. Handler&Looper
  9. Android 创建服务器 NanoHttpd
  10. 关于Android菜单上的记录