IT编程 > 数据库 > Mysql

LeetCode——Nth Highest Salary

29人参与2019-10-09

write a sql query to get the nth highest salary from the employee table.

+----+--------+
| id | salary |
+----+--------+
| 1  | 100    |
| 2  | 200    |
| 3  | 300    |
+----+--------+
for example, given the above employee table, the nth highest salary where n = 2 is 200. if there is no nth highest salary, then the query should return null.

+------------------------+
| getnthhighestsalary(2) |
+------------------------+
| 200                    |
+------------------------+

此题相较于second highest salary做了一些改进:

因此,对代码改动如下所示:

create function getnthhighestsalary(n int) returns int
begin
  declare p int default n-1;
  if (p<0) then
    return null;
  else
  return (
      # write your mysql query statement below.
      select ifnull(
            (
                select distinct salary 
                from employee 
                order by salary desc 
                limit p,1)
            ,null)
          as secondhighestsalary   
  );
  end if;
end

您希望与广大热心网友互动!!点此进行留言回复

相关推荐

LeetCode——Nth Highest Salary

10-09

从底层简析Python程序的执行过程

06-05

Percona-Tookit工具包之pt-slave-find

07-20

MySQL难点语法——连接

09-05

MySQL5.7使用pt-table-checksum检查主从数据一致性的测试讲解

11-06

Mysql - 存储过程 - 定时删表

09-02

修改MYSQL最大连接数的3种方法分享

06-05

经典mysql连接查询例题

07-04

mysql的左右内连接用法实例

06-05

Linux echo命令使用详解

04-26

最近更新

Linux搭建MySQL主从

10-20

MySQL实战45讲

10-20

“GIS DICTIONARY A-Z” 查询页面开发(2)——INSERT INTO数据库

10-20

MySQL如何进行索引重建操作?

10-20

MySQL truncate含有外键约束的条目报错

10-20

MySQL复制从库建立-xtracebackup方式

10-19

Python学习日记(四十) Mysql数据库篇 八

10-19

mysql查询表大小

10-19

MySQL修炼之路一

10-19

MySQL修炼之路二

10-19

网友评论

已有0条评论