get second highest salary in sql using cte code example
Example 1: how to get second highest salary in each department in sql
SELECT E.Employers_name, E.dep_number, E.salary
FROM Employers E
WHERE 1 = (SELECT COUNT(DISTINCT salary)
FROM Employers B
WHERE B.salary > E.salary AND E.dep_number = B.dep_number)
group by E.dep_number
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;