用的是什么数据库?如果是mysql 的话可以这样:
-- 找到第二高的分数
select min(score) from (select distinct score from scores order by score desc limit 2) a;
-- 找到记录
select * from scores where score in (select min(score) from (select distinct score from scores order by score desc limit 2) a);
其中score是分数,scores是数据表。
select top 1 * from XXX where XXX.ID not in (select top 1 ID from XXX order by XXX.score desc) order by XXX.score desc
select * from (
select * ,row_number() over(order by 分数 desc) number from table) a
where number=2