题2:
编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary),如果不存在第二高的薪水,那么查询应返回 null。
解题思路:
(1)先对数据进行降序排列
(2)找出薪水第二高的,用limit函数
(3)题目要求不存在第二高的薪水,返回 null,则需要用到IFNULL
代码如下:
select ifNull(
(select distinct salary
from Employee
order by Salary Desc
limit 1,1),null
) as SecondHighestSalary;