您的位置:首页 > 其它

176. Second Highest Salary

2017-08-29 10:26 295 查看

题目:

找出工资第二高的工资数。

Employee
.

IdSalary
1100
2200
3300
例如工资第二高的是200,则输出。如果没有第二高的数据,则返回空。

SecondHighestSalary
200

解析:

找出次高值,我们很容易联想到,找出元素中的最大值(利用内函数max())。但是并没有函数可以直接找到次高值,因此可以max来找到次高值。

在小于最大值的条件下,再次寻找一个最大值,那么该值就是次高值。

select max(salary) as SecondHighestSalary
from Employee
where salary<(select max(salary) from Employee)


利用
(select max(salary) from Employee)
找出最大值,并作为条件,小与该值再次寻找最大值,输出即为次高值。

住:一定要写
as SecondHighestSalary
,因为最后输出表头为
SecondHighestSalary
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: