my_leetcode/sql/q0176.md

1.0 KiB
Raw Blame History

176.第二高的薪水

原题链接

2021-07-16 10:48:18

SQL架构:

Create table If Not Exists Employee (Id int, Salary int);
Truncate table Employee;
insert into Employee (Id, Salary) values ('1', '100');
insert into Employee (Id, Salary) values ('2', '200');
insert into Employee (Id, Salary) values ('3', '300');

编写一个 SQL 查询,获取 Employee 表中第二高的薪水Salary

Id Salary
1 100
2 200
3 300

例如上述 EmployeeSQL查询应该返回 200 作为第二高的薪水。如果不存在第二高的薪水,那么查询应返回 null

SecondHighestSalary
200

Related Topics 数据库

👍 830 👎 0

SELECT
    IFNULL(
      (SELECT DISTINCT `Salary`
       FROM `Employee`
       ORDER BY `Salary` DESC
        LIMIT 1 OFFSET 1),
    NULL) AS SecondHighestSalary;