您的位置:首页 > 其它

LeetCode database 之 Second Highest Salary(第二高薪水)

2015-09-05 15:54 411 查看

题目:

Write a SQL query to get the second highest salary from the 
Employee
 table.
+----+--------+
| Id | Salary |
+----+--------+
| 1  | 100    |
| 2  | 200    |
| 3  | 300    |
+----+--------+


For example, given the above Employee table, the second highest salary is 
200
. If there
is no second highest salary, then the query should return 
null
.
如果没有第二高薪水,则返回NULL

代码:

使用max,如果不存在最高的则返回NULL

# Write your MySQL query statement below
SELECT max(Salary) FROM Employee WHERE Salary < (SELECT max(Salary) FROM Employee);

使用MySQL的特有函数IFNULL()
# Write your MySQL query statement below
SELECT IFNULL( (SELECT distinct Salary as SecondHighestSalary FROM Employee order by Salary desc limit 1,1) ,null);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: