SQL-18 查找当前薪水(to_date='9999-01-01')排名第二多的员工编号emp_no、薪水salary、last_name以及first_name,不准使用order by...
生活随笔
收集整理的這篇文章主要介紹了
SQL-18 查找当前薪水(to_date='9999-01-01')排名第二多的员工编号emp_no、薪水salary、last_name以及first_name,不准使用order by...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目描述
查找當前薪水(to_date='9999-01-01')排名第二多的員工編號emp_no、薪水salary、last_name以及first_name,不準使用order byCREATE 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`));
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`));
輸入描述:
無輸出描述:
| 10009 | 94409 | Peac | Sumant |
SQL:
select e.emp_no,max(s.salary) as salary,e.last_name,e.first_name from salaries s,employees e on e.emp_no=s.emp_no where s.salary not in(select max(salary) from salaries where to_date='9999-01-01') and s.to_date='9999-01-01'select 與max函數相互結合
轉載于:https://www.cnblogs.com/kexiblog/p/10674853.html
總結
以上是生活随笔為你收集整理的SQL-18 查找当前薪水(to_date='9999-01-01')排名第二多的员工编号emp_no、薪水salary、last_name以及first_name,不准使用order by...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java 基础数据类型
- 下一篇: LOJ#162. 快速幂 2(分块)