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
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 50个常用的sql语句Student(S#,Sname,Sage,Ssex) 学生表Course(C#,Cname...
    哈哈海阅读 4,988评论 0 7
  • 2017/3/14 RDBMS:关系型数据库管理系统 关系模型独立于语言 SQL有几种不同类型的语言:数据定义语言...
    ancherl阅读 5,581评论 0 6
  • DQL数据查询语言 数据库执行DQL语句不会对数据进行改变,而是让数据库发送结果集给客户端。 查询返回的结果集是一...
    Michael_林阅读 4,093评论 0 1
  • mysql的查询、子查询及连接查询 一、mysql查询的五种子句 where(条件查询)、having(筛选)、g...
    时芥蓝阅读 3,904评论 0 3
  • 官网 中文版本 好的网站 Content-type: text/htmlBASH Section: User ...
    不排版阅读 9,955评论 0 5