Nth max salary in Oracle

前端 未结 26 1663
名媛妹妹
名媛妹妹 2020-11-30 07:02

To find out the Nth max sal in oracle i\'m using below query

SELECT DISTINCE sal 
FROM emp a 
WHERE (
       SELECT COUNT(DISTINCE sal) 
       FROM emp b 
          


        
26条回答
  •  粉色の甜心
    2020-11-30 07:55

    There are three methods are there...

    SELECT salary,first_name,rnk 
    FROM (SELECT salary,first_name,rank() over (order by salary desc nulls last) as                                                                  rnk from emp) where rnk=3;
    
    
    SELECT salary,first_name,rnk 
    FROM (SELECT salary,first_name,dense_rank() over (order by salary desc nulls last) as                                                                  rnk from emp) where rnk=3;
    
    
    select rnk,first_name,salary 
    from (select rownum as rnk ,first_name,salary 
          from (select first_name,salary 
                from emp order by salary desc nulls last)) where rnk=3
    

提交回复
热议问题