您的位置:首页 > 数据库

《数据库SQL实战》查找所有员工的last_name和first_name以及对应部门编号dept_no,也包括展示没有分配具体部门的员工

2017-07-17 16:41 561 查看
题目:查找所有员工的last_name和first_name以及对应部门编号dept_no,也包括展示没有分配具体部门的员工

CREATE TABLE
dept_emp
(

emp_no
int(11) NOT NULL,

dept_no
char(4) NOT NULL,

from_date
date NOT NULL,

to_date
date NOT NULL,

PRIMARY KEY (
emp_no
,
dept_no
));

CREATE TABLE
employees
(

emp_no
int(11) NOT NULL,

birth_date
date NOT NULL,

first_name
varchar(14) NOT NULL,

last_name
varchar(16) NOT NULL,

gender
char(1) NOT NULL,

hire_date
date NOT NULL,

PRIMARY KEY (
emp_no
));



解析:由于有些员工可能没有分配部门号,需要用左外连接就好了,即返回左表中所有的行,即便右表没有满足的条件

select a.last_name,a.first_name,b.dept_no
from employees a left join dept_emp b
on a.emp_no=b.emp_no
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  数据库 员工 sql
相关文章推荐