Nth max salary in Oracle

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

    Try out following:

    SELECT *
    FROM
      (SELECT rownum AS rn,
        a.*
      FROM
        (WITH DATA AS -- creating dummy data
        ( SELECT 'MOHAN' AS NAME, 200 AS SALARY FROM DUAL
        UNION ALL
        SELECT 'AKSHAY' AS NAME, 500 AS SALARY FROM DUAL
        UNION ALL
        SELECT 'HARI' AS NAME, 300 AS SALARY FROM DUAL
        UNION ALL
        SELECT 'RAM' AS NAME, 400 AS SALARY FROM DUAL
        )
      SELECT D.* FROM DATA D ORDER BY SALARY DESC
        ) A
      )
    WHERE rn = 3; -- specify N'th highest here (In this case fetching 3'rd highest)
    

    Cheers!

提交回复
热议问题