写点什么

2022-11-21:第 N 高的薪水。表结构和数据的 sql 语句如下。请问 sql 语句如何写? DROP TABLE IF EXISTS employee; CREATE TABLE employee (

  • 2022-11-21
    北京
  • 本文字数:403 字

    阅读完需:约 1 分钟

2022-11-21:第N高的薪水。表结构和数据的sql语句如下。请问sql语句如何写? DROP TABLE IF EXISTS employee; CREATE TABLE employee (

2022-11-21:第 N 高的薪水。表结构和数据的 sql 语句如下。请问 sql 语句如何写?


DROP TABLE IF EXISTS employee;CREATE TABLE employee (  id int(11) NOT NULL,  salary int(11) NOT NULL) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO employee VALUES ('1', '100');INSERT INTO employee VALUES ('2', '200');INSERT INTO employee VALUES ('3', '300');
需要写的函数如下:CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INTBEGIN RETURN ( # 在这里写sql语句 );END
复制代码


答案 2022-11-21:


sql 语句如下:


CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INTBEGIN    SET N := N-1;  RETURN (      SELECT             salary      FROM             employee      GROUP BY             salary      ORDER BY             salary DESC      LIMIT N, 1  );END
select getNthHighestSalary(2);
复制代码


执行结果如下:



发布于: 刚刚阅读数: 5
用户头像

还未添加个人签名 2021-02-15 加入

还未添加个人简介

评论

发布
暂无评论
2022-11-21:第N高的薪水。表结构和数据的sql语句如下。请问sql语句如何写? DROP TABLE IF EXISTS employee; CREATE TABLE employee (_数据库_福大大架构师每日一题_InfoQ写作社区