在Athena中使用单列值选择不同的行

时间:2019-01-31 17:39:50

标签: sql hive amazon-athena presto

我是数据库的新手,因此感谢您的帮助。

给出一个表,该表具有10列A,B,C,D,...在所有列中都有很多非唯一值,如何在A列中获得具有不同值的行。因此,如果有5行在A列中分别输入'eureka'和'hippie',我每个都需要一行。

如果您能告诉我多个解决方案并将其与SQL副本进行比较,那就太好了。我搜索可以使用GROUP BY和PARTITION BY来完成,但是以某种方式我无法在Athena中获得查询工作。谢谢!!!

1 个答案:

答案 0 :(得分:0)

使用row_number()

select t.*
from (select t.*, row_number() over (partition by a order by a) as seqnum
      from t
     ) t
where seqnum = 1;