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



我是数据库的新手,所以感谢您的帮助。

给定一个包含 10 列 A、B、C、D、.....在所有列中都有很多非唯一值,如何在 A 列中获取具有不同值的行。因此,如果 A 列中有 5 行,每行的值分别为"eureka"和"嬉皮士",则每行都需要一行。

如果您能告诉我多种解决方案并将其与 SQL 对应项进行比较,那就太好了。我搜索了它可以使用 GROUP BY 和 PARTITION BY 完成,但不知何故我无法在 Athena 中获得查询工作。谢谢!!!

使用 row_number()

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

最新更新