Presto SQL Group通过并在汇总所有时间戳记时从最新时间戳记获取列

时间:2018-06-20 14:48:03

标签: sql presto

例如,如果我的表(没有主键)是:

id   |   timestamp  |  region  |  name  |
1        2018-01-01    region1    name1
1        2018-01-02    region2    name1
2        2018-01-01    region2    name2
2        2018-01-02    region1    name3

我想退回两行

id  |  timestamps               |  region  |  name  |
1      [2018-01-01, 2018-01-02]    region2    name1
2      [2018-01-01, 2018-01-02]    region1    name3

因此,从本质上讲,汇总时间戳记,但使用最新时间戳记的行来填充其他字段。

我开始时是这样的:

SELECT id, array_agg(timestamp), first_value(region), first_value(name) FROM tbl GROUP BY id

但是我知道这不是在选择first_value

之前对分组的元素进行排序

0 个答案:

没有答案