在窗口分区中使用UNIQUE()

时间:2016-10-12 21:14:37

标签: google-bigquery

我目前正在尝试使用BigQuery返回窗口函数的特定分区中的所有非null值。理想的状态是能够做到这样的事情:

UNIQUE(columnName) OVER (Partition by col1, col2)

然而,当我尝试时,错误说明:

Error: Unrecognized is not currently supported as an analytic function.

因此,我假设这种直接的东西目前不可能。

有没有人有一种优雅的方式让这项工作?

谢谢!

1 个答案:

答案 0 :(得分:0)

有很多方法 - 取决于您期望的输出和(最重要的)输出 <怎么样

SELECT col1, col2, GROUP_CONCAT(UNIQUE(STRING(columnName))) AS values
FROM yourTable
GROUP BY col1, col2

如果columnName已经是STRING类型 - 您可以省略使用STRING()函数