【发布时间】:2018-09-19 03:09:56
【问题描述】:
我有这样的数据:
id, id2, datetime_created
1, 1, 9/10
1, 2, 9/9
1, 3, 9/8
2, 4, 9/8
2, 5, 9/2
2, 6, 9/1
3, 7, 9/3
3, 8, 9/4
3, 9, 9/5
预期输出:
id, id2
1, 1
2, 4
3, 9
我尝试了很多方法,包括:
SELECT id, id2, MAX(datetime_created)
FROM table
GROUP BY id2
,
SELECT id, id2, MAX(datetime_created)
FROM table
GROUP BY id, id2
,
SELECT id, id2
FROM table
INNER JOIN (
SELECT MAX(datetime_created), id
FROM table)
This 问题还不够。踢球者是 GROUP BY 与我需要的字段之一不同的字段,而没有 GROUP BYing 第二个字段,因为这会返回太多行(从我的示例数据集中,它将返回所有行)。
【问题讨论】:
-
在预期的结果中,没有提到 datetime_created。就样本数据而言,您真的是指“GROUP BY field3”而不是“忽略字段 3”吗?
-
我不需要
datetime_created,但我需要id和id2GROUP BY id以及最新的datetime_created用于那个id。我收到的几个答案都理解了这个问题。 -
是的,看来我看错了。没必要说我很笨。
标签: sql amazon-redshift