获取当前(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 ) ;

全部评论

相关推荐

02-14 15:34
门头沟学院 Java
Java抽象带篮子:专业技能怎么写可以看看我发的帖子
点赞 评论 收藏
分享
小狗吃臭臭:以后用不到你设计的手机了,可惜!
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务