Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql中日期字段到另一个字段的最大值_Sql_Postgresql_Date_Select_Max - Fatal编程技术网

Postgresql中日期字段到另一个字段的最大值

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 =

我有一个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 = m.id;

请记住,如果没有更多信息,这可能是一个效率极低的查询,但它可以满足您的需要。

您可以使用
max
的窗口变体:

SELECT id, date, MAX(date) OVER (PARTITION BY id)
FROM   mytable