Nth max salary in Oracle

前端 未结 26 1725
名媛妹妹
名媛妹妹 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:43

    Now you try this you will get for sure:

    SELECT DISTINCT sal 
        FROM emp a 
        WHERE (
               SELECT COUNT(DISTINCT sal) 
               FROM emp b 
               WHERE a.sal<=b.sal)=&n;
    

    For your information, if you want the nth least sal:

    SELECT DISTINCT sal 
    FROM emp a 
    WHERE (
           SELECT COUNT(DISTINCT sal) 
           FROM emp b 
           WHERE a.sal>=b.sal)=&n;
    

提交回复
热议问题