跳到主要内容

177.第N高的薪水

链接:177.第N高的薪水
难度:Medium
标签:数据库
简介:查询 Employee 表中第 n 高的工资。如果没有第 n 个最高工资,查询结果应该为 null 。

题解 1 - sql

  • 编辑时间:2024-10-15
  • 执行用时:1052ms
  • 编程语言:sql
  • 解法介绍:通过子查询查到当前超过当前薪水人数的总数
CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT
BEGIN
RETURN (
select distinct salary
from Employee e1
where (N - 1) = (
select count(distinct salary)
from Employee e2
where e2.salary > e1.salary
)
);
END