Postgresql中日期字段到另一个字段的最大值
我有一个postgresql表,其中有几个字段,比如id和date。我需要找到该id的最大日期,并将其显示在所有id的新字段中。SQLFiddle站点没有响应,因此我在excel中有一个示例。这是数据的屏幕截图和表的输出Postgresql中日期字段到另一个字段的最大值,sql,postgresql,date,select,max,Sql,Postgresql,Date,Select,Max,我有一个postgresql表,其中有几个字段,比如id和date。我需要找到该id的最大日期,并将其显示在所有id的新字段中。SQLFiddle站点没有响应,因此我在excel中有一个示例。这是数据的屏幕截图和表的输出 类似的方法可能会奏效: WITH maxdts AS ( SELECT id, max(dt) maxdt FROM table GROUP BY id ) SELECT id, date, maxdt FROM table t, maxdts m WHERE t.id =
类似的方法可能会奏效:
WITH maxdts AS (
SELECT id, max(dt) maxdt FROM table GROUP BY id
)
SELECT id, date, maxdt FROM table t, maxdts m WHERE t.id = m.id;
请记住,如果没有更多信息,这可能是一个效率极低的查询,但它可以满足您的需要。您可以使用
max
的窗口变体:
SELECT id, date, MAX(date) OVER (PARTITION BY id)
FROM mytable