我有一个postgresql表,其中我有几个字段,如id和date。我需要找到该id的最大日期,并将其显示为所有id的新字段。 SQLFiddle网站没有响应,所以我在excel中有一个例子。以下是数据的截图和表格的输出。
答案 0 :(得分:1)
您可以使用max
的窗口变体:
SELECT id, date, MAX(date) OVER (PARTITION BY id)
FROM mytable
答案 1 :(得分:0)
这样的事可能有用:
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;
请记住,如果没有更多信息,这可能是一个非常低效的查询,但它会为您提供所需的信息。