已关闭,此问题需要更focused。目前不接受答复。
**想改善这个问题吗?**更新问题,使其仅通过editing this post关注一个问题。
12小时前关闭。
Improve this question
我有一个电影表,里面有100多部不同的电影,在PostgreSQL上显示如下:
我想知道每一部最新发行的电影的名字,根据每一种类型。
如何在PostgreSQL中获得以下输出?
已关闭,此问题需要更focused。目前不接受答复。
**想改善这个问题吗?**更新问题,使其仅通过editing this post关注一个问题。
12小时前关闭。
Improve this question
我有一个电影表,里面有100多部不同的电影,在PostgreSQL上显示如下:
我想知道每一部最新发行的电影的名字,根据每一种类型。
如何在PostgreSQL中获得以下输出?
2条答案
按热度按时间lnxxn5zx1#
您可以使用窗口函数(如
DENSE_RANK()
),并通过返回等于1的值进行筛选,如下所示在哪里
PARTITION BY
表示GROUP BY
DESC
结尾ORDER
ingBY
意思是得到最新的ROW_NUMBER()
不同,DENSE_RANK()
函数保持Released_Dates的关系(* 每个组的日期值相等 *)eulz3vhy2#
使用
DISTINCT ON
获得不同的流派。ORDER BY
将为您提供每个流派的最新版本。