Back

Temp

How to find the second highest salary?





EMPLOYEE table has fields EMP_ID and SALARY how do you find the second highest salary?





Solution:


We can write a sub-query to achieve the result





SELECT MAX(SALARY)


FROM EMPLOYEE


WHERE SALARY NOT IN (SELECT MAX(SALARY) FROM EMPLOYEE)





The first sub-query [SELECT MAX(SALARY) FROM EMPLOYEE] in the WHERE clause will return the MAX SALARY in the table and the main query SELECT’s the MAX SALARY from the results which doesn’t have the highest SALARY.