首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为最大( colDate )-1处的每个colA获取colA行

如何为最大( colDate )-1处的每个colA获取colA行
EN

Stack Overflow用户
提问于 2015-06-10 19:18:07
回答 1查看 43关注 0票数 2

我试图解决以下问题:

代码语言:javascript
复制
colA     colDate     DenseRank
-------------------------------
a         2015-06-10     1
a         2015-06-09     2
b         2015-06-10     1
b         2015-06-09     2
b         2015-06-08     3

我想得到这个结果

代码语言:javascript
复制
a   2015-06-10   1
b   2015-06-09   2

是否可以通过查询获得这一结果,或者我只能通过t获得它?我能得到解决方案的例子吗?谢谢你提前..。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-10 19:36:39

这个怎么样?(应该使用Server 2005+)

代码语言:javascript
复制
select colA, colDate, DenseRank
from (
   select colA, colDate, DenseRank, row_number() over (partition by colA order by DenseRank desc) rn
   from YourTable
) x
where x.rn = 2

编辑:更改为使用row_number()而不是rank()

另外,您没有指定,但我假设对于给定的colA值,您不能有任何重复的DenseRank值。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30765379

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档