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

后端 未结 18 1352
孤城傲影
孤城傲影 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条回答
  •  天涯浪人
    2020-12-30 17:58

    This query helps me every time for problems like this. Replace N with position..

    select *
    from(
         select *
         from (select * from TABLE_NAME order by SALARY_COLUMN desc)
         where rownum <=N
        )
    where SALARY_COLUMN <= all(
                    select SALARY_COLUMN
                    from (select * from TABLE_NAME order by SALARY_COLUMN desc)
                    where rownum <=N
                   );
    

提交回复
热议问题