求某列第二最大值所在行的SQL
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求某列第二最大值所在行的SQL相关的知识,希望对你有一定的参考价值。
先从大到小排名,然后取第二名,那样就是第二大的值了例:
SELECT
*
FROM
(
select *,
rank() over ( ORDER BY id asc) rank1
from people
) a
where rank1=2 参考技术A select max(某列) from 表 where 某列<>(select max(某列) from表)
Sql语句查询某列A相同值的另一列B最大值的数据
问题描述:
有一张表File_Info,有若干字段,其中有2个字段FileName(文件名称)和FileVer(文件版本号)。
现在的表数据是这样的,FileName字段的名称可能有一样的(重复的),但是重复的时候,它们对应的FileVer不一样。
查询结果:
要求查询出FileName字段重复时,FileVer值最大的所有数据。
SQL语句如下:
1 SELECT * 2 FROM( 3 SELECT *,ROW_NUMBER() OVER(PARTITION BY FileName ORDER BY FileVer DESC) Num FROM File_Info 4 WHERE ModuleDataId=‘0B01DACC-27EC-4689-930B-088FC4E07A7A‘ 5 ) t 6 WHERE t.Num=1
查询前后效果如下:
以上是关于求某列第二最大值所在行的SQL的主要内容,如果未能解决你的问题,请参考以下文章