提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
题目描述
有一个薪水表salaries简况如下:

对所有员工的薪水按照salary进行按照1-N的排名,相同salary并列且按照emp_no升序排列:

解题思路
1.通过子查询查询比当前选定的员工薪水低的人数+1得到每个员工的排名
2.通过ORDER BY将检索出来的表项按照排名进行排序
参考代码
SELECT S1.emp_no, S1.salary, (SELECT COUNT(DISTINCT S2.salary) + 1
FROM salaries AS S2
WHERE S2.salary > S1.salary) AS t_rank
FROM salaries AS S1
ORDER BY t_rank
博客围绕MySQL数据库中薪水表的查询问题展开。题目要求对所有员工的薪水按salary进行1 - N排名,相同salary并列且按emp_no升序排列。解题思路是通过子查询查询比当前员工薪水低的人数加1得到排名,再按排名排序,还给出了参考代码。
5985

被折叠的 条评论
为什么被折叠?



