首页 > 解决方案 > postgres SQL 查询以查找特定重复值的最近条目

问题描述

我有两列即主机名和时间戳的表。主机名将有许多重复值,如下所述。我需要获取特定重复值的最后一个条目的时间戳。在这种情况下,服务器 AB 和 CD 都有重复值。但我需要找到 Hostname=AB 的重复值。该表将实时包含主机名的许多重复项。

|hostname |timestamp|
|:........|---------:|
|AB       |14Aug2021 11:12|
|BC       |15Aug2021 11:12|
|CD       |16Aug2021 11:12|
|CD      |22Aug2021 11:12|
|AB      |25Aug2021 11:12|
|CD      |26Aug2021 11:12|

在上表中,我需要获取 hostname=AB 的最新时间戳条目

标签: sqlpostgresql

解决方案


这应该很简单

SELECT max(timestamp) FROM tab WHERE hostname = 'AB';

聚合max将返回与条件匹配的所有行的最大时间戳WHERE


推荐阅读