如何从工资表中找到第三或 nᵗʰ 最高工资? [英] How to find third or nᵗʰ maximum salary from salary table?
本文介绍了如何从工资表中找到第三或 nᵗʰ 最高工资?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何以优化的方式从薪水table(EmpID, EmpName, EmpSalary)
中找到第三个或第n个th最高薪水?
How to find third or nth maximum salary from salary table(EmpID, EmpName, EmpSalary)
in optimized way?
推荐答案
使用ROW_NUMBER
(如果你想要一个)或DENSE_RANK
(对于所有相关的行):
Use ROW_NUMBER
(if you want a single) or DENSE_RANK
(for all related rows):
WITH CTE AS
(
SELECT EmpID, EmpName, EmpSalary,
RN = ROW_NUMBER() OVER (ORDER BY EmpSalary DESC)
FROM dbo.Salary
)
SELECT EmpID, EmpName, EmpSalary
FROM CTE
WHERE RN = @NthRow
这篇关于如何从工资表中找到第三或 nᵗʰ 最高工资?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文