【问题标题】:Get the latest entry of each duplicate on Postgres获取 Postgres 上每个重复项的最新条目
【发布时间】:2022-06-15 05:50:59
【问题描述】:

我正在使用 Postgres v12,并且我有一个包含重复行的表。我只需要检索每个重复项的最后一个条目,忽略没有重复的条目。

此表包含以下列:

  • id(唯一)
  • request_id(在哪里可以找到重复项)
  • created_at(在哪里查看哪个条目是最新的)
id request_id created_at
1 a 2020.06.06
2 a 2020.05.05
3 b 2020.04.04
4 b 2020.03.03
5 c 2020.04.04
6 c 2020.03.03
7 d 2020.03.03

查询应该检索 id 为 1,3,5 的行,因为它们是每个重复项的最新条目 (created_at)。 ID 7 没有重复,因此被忽略。

我已经尝试过这里提出的解决方案:https://www.geeksengine.com/article/get-single-record-from-duplicates.html 但由于使用的是 Postgres v12,这些查询不起作用,我收到错误“列必须出现在 group by 子句中”,这是这里引用的另一个问题: must appear in the GROUP BY clause or be used in an aggregate function

我几天来一直在寻找解决这个问题的方法,但我不是 SQL 专家。非常感谢任何帮助。

【问题讨论】:

  • 向我们展示您想要的输出

标签: sql postgresql


猜你喜欢
  • 2021-02-22
  • 1970-01-01
  • 2019-10-11
  • 1970-01-01
  • 2014-11-01
  • 2017-04-11
  • 1970-01-01
  • 1970-01-01
  • 2011-01-13
相关资源
最近更新 更多