您的位置:首页 > 数据库

牛客:数据库实战—2—查找各个部门当前(to_date='9999-01-01')领导当前薪水详情以及其对应部门编号dept_no

2018-11-04 19:30 489 查看
[code]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`));
[code]SELECT s.emp_no,s.salary,s.from_date,s.to_date,dm.dept_no FROM
salaries s,dept_manager dm WHERE
s.to_date='9999-01-01' AND
  dm.to_date='9999-01-01' AND
dm.emp_no = s.emp_no;

做这个题目真是折腾,salaries是主表,dept_manager 是从表,

问题是在于dep_manager为主表的时候,会出现对应的salaries相应的列有null的情况。

因此From后面跟上顺序不能错。

阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐