How to get second-highest salary employees in a table

后端 未结 30 994
离开以前
离开以前 2020-12-23 20:15

It\'s a question I got this afternoon:

There a table contains ID, Name, and Salary of Employees, get names of the second-highest salary employees, in SQL Server

30条回答
  •  暖寄归人
    2020-12-23 20:51

    All of the following queries work for MySQL:

    SELECT MAX(salary) FROM Employee WHERE Salary NOT IN (SELECT Max(Salary) FROM Employee);
    
    SELECT MAX(Salary) From Employee WHERE Salary < (SELECT Max(Salary) FROM Employee);
    
    SELECT Salary FROM Employee ORDER BY Salary DESC LIMIT 1 OFFSET 1;
    
    SELECT Salary FROM (SELECT Salary FROM Employee ORDER BY Salary DESC LIMIT 2) AS Emp ORDER BY Salary LIMIT 1;
    

提交回复
热议问题