我有一个表格账单(名称为char(30),金额为int,account_id为int)。我试图从表中找出第二高的数额。样本数据如下:
Name | Amount | Account_ID
Phoness Company | 125 | 1
O Company | 127 | 2
Phoness Company | 187 | 1
sdfkjlef | 45 | 3
我的代码返回125.它应该返回127.不知道我在这里做错了什么。
select min(amount) from (select top 2 amount from bills) b
答案 0 :(得分:2)
你差不多完成了:
select min(amount) from (select top 2 amount from bills order by amount desc) b
如果在您的表中有多个具有最高值的行,您可以使用它:
select min(amount) from (select distinct top 2 amount from bills order by amount desc) b