get second highest record in sql code example
Example 1: sql find second highest salary employee
select sal, ename
from emp
where sal =
(
select max(sal) from emp where sal <
(select max(sal) from emp)
)
select *
from
(
select ename, sal, dense_rank() over(order by sal desc) rank
from emp
)
where rank =2;
Example 2: second highest salary in sql
SELECT MAX(SALARY) 'SECOND_MAX' FROM EMPLOYEES
WHERE SALARY <> (SELECT MAX(SALARY) FROM EMPLOYEES);
OR
Here is the solution for nth highest
salary from employees table
SELECT FIRST_NAME , SALARY FROM
(SELECT FIRST_NAME, SALARY, DENSE_RANK() OVER
(ORDER BY SALARY DESC) AS SALARY_RANK
FROM EMPLOYEES)
WHERE SALARY_RANK = n;