您的位置:首页 > 数据库

【数据库SQL实战】查找当前薪水详情以及部门编号dept_no

2018-04-02 22:02 676 查看
https://www.nowcoder.com/practice/c63c5b54d86e4c6d880e4834bfd70c3b?tpId=82&tqId=29755&tPage=1&rp=&ru=/ta/sql&qru=/ta/sql/question-ranking

查找各个部门当前(to_date=’9999-01-01’)领导当前薪水详情以及其对应部门编号dept_no

CREATE TABLE
dept_manager
(

dept_no
char(4) NOT NULL,

emp_no
int(11) NOT NULL,

from_date
date NOT NULL,

to_date
date NOT NULL,

PRIMARY KEY (
emp_no
,
dept_no
));

CREATE TABLE
salaries
(

emp_no
int(11) NOT NULL,

salary
int(11) NOT NULL,

from_date
date NOT NULL,

to_date
date NOT NULL,

PRIMARY KEY (
emp_no
,
from_date
));

两种解法本质上都是连接两个表。

解法一:

select s.*,d.dept_no
from salaries s join dept_manager d
on s.emp_no=d.emp_no
where s.to_date = '9999-01-01' and d.to_date = '9999-01-01'


解法二:

SELECT s.*, d.dept_no
FROM salaries s ,  dept_manager d
WHERE s.to_date='9999-01-01'
AND d.to_date='9999-01-01'
AND s.emp_no = d.emp_no;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐