LeetCode、牛客每天一题

查找所有已经分配部门的员工

题目描述

查找所有已经分配部门的员工的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));

解题思路

连接查询

第一种方法就是使用where进行查询

1
2
3
select e.last_name,e.first_name,d.dept_no
from dept_emp as d,employees as e
where d.emp_no=e.emp_no

第二种使用join

1
2
3
select e.last_name,e.first_name,d.dept_no
from dept_emp as d join employees as e
on d.emp_no=e.emp_no

答案解析

1
2
3
select e.last_name,e.first_name,d.dept_no
from dept_emp as d,employees as e
where d.emp_no=e.emp_no

image-20200730103414991

点击查看
-------------------本文结束 感谢您的阅读-------------------