How can I select the record with the 2nd highest salary in database Oracle?

后端 未结 18 1359
孤城傲影
孤城傲影 2020-12-30 17:27

Suppose I have a table employee with id, user_name, salary. How can I select the record with the 2nd highest salary in Oracle?

I googled it, find this solution, is t

18条回答
  •  旧时难觅i
    2020-12-30 17:56

    select * FROM (
    select EmployeeID, Salary
    , dense_rank() over (order by Salary DESC) ranking
    from Employee
    )
    WHERE ranking = 2;
    

    dense_rank() is used for the salary has to be same.So it give the proper output instead of using rank().

提交回复
热议问题