SQL in leetcode-177. Nth Highest Salary

思路非常简单,对工资进行排序(升序),取第N行
考察点:
1.limit offset用法
代码示例:

select * from student limit 9,4
slect * from student limit 4 offset 9
// 语句1和2均返回表student的第10、11、12、13行  
//语句2中的4表示返回4行,9表示从表的第十行开始

2.是工资的第N位,所以需要在select了工资列之后用group by
3.行号从0起,因而我们需要选择的行号为N-1

CREATE FUNCTION getNthHighestSalary(N INT) RETURNS int
BEGIN
SET N = N - 1;
RETURN (
    SELECT Salary FROM Employee GROUP BY Salary ORDER BY Salary DESC limit 1 offset N
  );
END

你可能感兴趣的:(SQL in leetcode-177. Nth Highest Salary)