PSQL:忽略重复项,显示 table 中的最新记录
PSQL: Ignore duplicates, show most recent records in table
我有 psql table 具有以下方案。每个实例在 table 中出现多次,并带有创建日期。
我只对最近的感兴趣。因此过滤重复项,仅显示最近出现的唯一项。
我想要的输出如下:
你能帮我找到正确的查询代码吗?
在此先感谢您的帮助!
我会说你的查询是我在这里遗漏的...
反正。可以排序,先挑,也可以分组挑max/min。那是简单的解决方案。这里更大的大炮是 window functions.
如果这还不够 - 请提供您的查询,我会编辑答案...我们会成功的! :)
您可以使用 distinct on(unique_id)
:
select distinct on(unique_id) unique_id, "text", creation_date
from table_name
order by unique_id, creation_date desc;
我有 psql table 具有以下方案。每个实例在 table 中出现多次,并带有创建日期。
我只对最近的感兴趣。因此过滤重复项,仅显示最近出现的唯一项。
我想要的输出如下:
你能帮我找到正确的查询代码吗?
在此先感谢您的帮助!
我会说你的查询是我在这里遗漏的... 反正。可以排序,先挑,也可以分组挑max/min。那是简单的解决方案。这里更大的大炮是 window functions.
如果这还不够 - 请提供您的查询,我会编辑答案...我们会成功的! :)
您可以使用 distinct on(unique_id)
:
select distinct on(unique_id) unique_id, "text", creation_date
from table_name
order by unique_id, creation_date desc;