leetcode - 第二高的薪水

编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary)。如果不存在第二高的薪水,那么查询应返回 null。

  1. 首先将数据排序然后去重
  2. 利用limit取数据
    limit y 分句表示: 读取 y 条数据
    limit x, y 分句表示: 跳过 x 条数据,读取 y 条数据
    limit y offset x 分句表示: 跳过 x 条数据,读取 y 条数据
  3. 考虑到空值的情况,使用IFNULL处理
    ifnull(x,y),若x不为空则返回x,否则返回y

select
ifnull
(
(select distinct Salary
from Employee
order by Salary desc
limit 1,1),
null
)as SecondHighestSalary

发布了4 篇原创文章 · 获赞 0 · 访问量 23

猜你喜欢

转载自blog.csdn.net/Frances_mm/article/details/104502625