[LeetCode] Nth Highest Salary 第N高薪水
程序员文章站
2022-10-08 20:38:22
题目 编写一个 SQL 查询,获取 表中第 n 高的薪水(Salary)。 例如上述 表,n = 2 时,应返回第二高的薪水 。如果不存在第 n 高的薪水,那么查询应返回 。 解法 摘自: https://www.cnblogs.com/grandyang/p/5348976.html ......
题目
编写一个 sql 查询,获取 employee
表中第 n 高的薪水(salary)。
+----+--------+ | id | salary | +----+--------+ | 1 | 100 | | 2 | 200 | | 3 | 300 | +----+--------+
例如上述 employee
表,n = 2 时,应返回第二高的薪水 200
。如果不存在第 n 高的薪水,那么查询应返回 null
。
+------------------------+ | getnthhighestsalary(2) | +------------------------+ | 200 | +------------------------+
解法
create function getnthhighestsalary(n int) returns int begin set n = n - 1; return ( select distinct salary from employee group by salary order by salary desc limit 1 offset n ); end
摘自: