我正在尝试对表中的数据子集进行排名,但我认为我做错了。我找不到有关 postgres 的 rank() 功能的太多信息,也许我找错了地方。无论哪种方式:
我想知道基于日期的表集群中的 id 的排名。我的查询如下:
select cluster_id,feed_id,pub_date,rank
from (select feed_id,pub_date,cluster_id,rank()
over (order by pub_date asc) from url_info)
as bar where cluster_id = 9876 and feed_id = 1234;
我在以下stackoverflow帖子之后对此进行建模: postgres rank
我认为我做错了什么的原因是 url_info 中只有 39 行位于 cluster_id 9876 中,并且此查询运行了 10 分钟并且再也没有回来。(实际上重新运行了很长一段时间,它没有返回任何结果,但在集群 9876 中有一行 id 1234)我希望这会告诉我“id 1234 是给定标准的第 5 位)。它将根据我的查询约束返回相对排名,对吗?
这是 postgres 8.4 顺便说一句。