AWS Athena-获取最新时间戳的唯一设备行数据

时间:2018-11-30 12:25:10

标签: amazon-web-services amazon-athena presto

我在aws athena中有一张桌子,如下所示。 enter image description here

并且我想为每个设备ID获取具有最高时间戳的行。

1 个答案:

答案 0 :(得分:1)

使用ansi-sql,您只需要具有group by和聚合功能的子选择:

    SELECT distinct last_record.*
FROM changesets AS c
INNER JOIN 
    (SELECT c2.user,
         MAX(c2.created_at) AS max_timestamp
    FROM changesets AS c2
    GROUP BY  c2.user) AS last_record
    ON c.user = last_record.user

当然不要忘记,如果deviceId不是主键或非唯一键,这将从 last_record 返回多行,因此您需要与众不同 < / p>