【问题标题】:Add all distinct values of a column to an array将列的所有不同值添加到数组
【发布时间】:2022-08-18 14:47:25
【问题描述】:

我试图将一列的不同值输出到一个数组中,而不是 SELECT DISTINCT column FROM table ,它会为每个唯一值输出 1 行。我想要只有 1 行。我已经尝试了一些方法来做到这一点,但我一直以错误告终:

syntax error: no viable alternative at input \'ARRAY_DISTINCT(SELECT\'

SELECT
    ARRAY_DISTINCT(SELECT column_1 FROM table WHERE p = \'2022-08-17\') as column_distinct_values

\'Where `p` is the partition

我也尝试了以下产生相同错误的方法。

SELECT
    ARRAY(SLECT DISTINCT column_1 FROM table WHERE p = \'2022-08-17\') as column_distinct_values

\'Where `p` is the partition

所以问题是,实现这一目标的正确语法/方法是什么?


样本输入/所需输出

  • 有什么理由不打开文档?

标签: sql presto


【解决方案1】:
You can try with array_agg function instead of ARRAY or ARRAY_DISTINCT

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-13
    • 2015-08-18
    • 2018-11-06
    相关资源
    最近更新 更多