记录一次LeetCode的SQL提交问题

本SQL问题是 #176 Second Highest Salary

本题目是求第二高薪的问题。很容易就会想到用LIMIT和OFFSET来写:

select     
    distinct(p.salary) as SecondHighestSalary
from employee as p 
order by p.salary DESC 
limit 1 offset 1

但是这个SQL是'Wrong',因为当数据只有一条时,上面的SQL返回是空而非系统要求的NULL

而SQL要返回NULL可以直接select 一个空就行了,所以以上的SQL改进为:

select (
    select distinct(p.salary) 
    from employee as p 
    order by p.salary DESC 
    limit 1 offset 1
) as SecondHighestSalary

这样就可以Accepted

你可能感兴趣的:(记录一次LeetCode的SQL提交问题)