题解 | 获取当前薪水第二多的员工的emp_no以及其对应的薪水salary

#   请你获取薪水第二多的员工的emp_no以及其对应的薪水salary,
#   若有多个员工的薪水为第二多的薪水,则将对应的员工的emp_no和salary全部输出,并按emp_no升序排序。
#   思路1:先denes_rank(),然后筛选(用from的子查询),注意做当前日期筛查。;拓展:rank()跳跃式排序(高考总分排名1134);denes_rank()并列连续排序(1123);row_number()连续型排序(如1234)
select emp_no, salary
from(select *, dense_rank()over(order by salary desc) rk from salaries where to_date = '9999-01-01' ) as posn
where posn.rk = 2
order by emp_no



#   思路2:distinct(用group by 去重也可以),然后order by,最后limit 1,1,最后筛选(用where的子查询)。注意做2次当前日期筛查(如果salaries表中有其他年份日期的薪水,排序后恰好是第2名,且当前年份日期的薪水和前面的第2名刚好相等。)
/*
select emp_no, salary
from salaries
where salary = (select distinct salary from salaries order by salary desc limit 1,1  where to_date = '9999-01-01') and to_date = '9999-01-01'
order by emp_no
*/

全部评论

相关推荐

叶扰云倾:进度更新,现在阿里云面完3面了,感觉3面答得还行,基本都答上了,自己熟悉的地方也说的比较细致,但感觉面试官有点心不在焉不知道是不是不想要我了,求阿里收留,我直接秒到岗当阿里孝子,学校那边的房子都退租了,下学期都不回学校,全职猛猛实习半年。这种条件还不诱人吗难道 然后现在约到了字节的一面和淘天的复活赛,外加猿辅导。华为笔试完没动静。 美团那边之前投了个base广州的,把我流程卡麻了,应该是不怎么招人,我直接简历挂了,现在进了一个正常的后端流程,还在筛选,不知道还有没有hc。
点赞 评论 收藏
分享
来个大佬救一下,为上投了都是石沉大海了,没实习经历的话怕秋招直接进不了面。什么实习这么难找,基本
心态爆炸了:现在正式的岗位都少,实习基本不咋招的,除了大厂,中小企业其实没那么多岗位需求,就算是有,大多都是招一两个廉价劳动力,同时,他们也会希望你一来就能干活的,没时间培训你,就让你了解公司的项目,你了解完就可以开始干活。再者是,很多低质量的实习其实用处没有那么大的。我去年也是找实习找到破防,最后去了一家深圳的小公司实习,工作对我来说很简单,甚至不如我在学校做的项目,秋招的时候,这段实习经历也并没有帮上什么忙,投递简历,依旧非常低的回复率。低回复率是常态,尤其是找实习,找不到,那就把重心放在优化自己的简历和项目,多看八股文,锻炼自己的面试能力,多看别人的面经,自己模拟面试,等秋招的时候,只要有那么寥寥几次,好好抓住那几次机会。
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务