获取当前(to_date='9999-01-01')薪水第二多的员工的emp_no以及其对应的薪水salary
获取当前薪水第二多的员工的emp_no以及其对应的薪水salary
http://www.nowcoder.com/questionTerminal/8d2c290cc4e24403b98ca82ce45d04db
求解:获取当前(to_date='9999-01-01')薪水第二多的员工的emp_no以及其对应的薪水salary
建表语句:
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));
求解思路:
分析得知,我们首先需要得出薪水第二多的具体薪资是多少,我们想到了limit子句,order by 子句 之后就很顺利了
select emp_no, salary
from salaries
where salary = (
select distinct salary
from salaries
group by salary
having salary = max(salary)
order by salary desc
limit 1,1 ) ;


查看15道真题和解析
阿里云成长空间 743人发布