[LeetCode] #176 第二高的薪水

编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary) 。

例如上述 Employee 表,SQL查询应该返回 200 作为第二高的薪水。如果不存在第二高的薪水,那么查询应返回 null

使用分页查询以及IFNULL( )函数

SELECT IFNULL((SELECT DISTINCT Salary FROM Employee ORDER BY Salary DESC LIMIT 1,1),NULL) AS SecondHighestSalary;

使用分页查询,并嵌套子查询,若虚拟表为空返回null

SELECT (SELECT DISTINCT Salary FROM Employee ORDER BY Salary DESC LIMIT 1,1) AS SecondHighestSalary;

使用MAX( )函数,不是最大值的最大值

SELECT MAX(Salary) SecondHighestSalary FROM employee WHERE salary<(SELECT MAX(salary) FROM employee);

知识点:

总结:

posted @ 2021-08-29 19:36  1243741754  阅读(30)  评论(0编辑  收藏  举报