我目前正在使用 BigQuery 和 GROUP_CONCAT,它们运行良好。但是,当我像在 SQL 中那样尝试将 ORDER BY 子句添加到 GROUP_CONCAT 语句时,我收到错误消息。
所以例如,像SELECT a, GROUP_CONCAT(b ORDER BY c)
FROM test
GROUP BY a
如果我尝试指定分隔符,也会发生同样的情况。
关于如何解决这个问题的任何想法?
最佳答案
BigQuery 中的标准 SQL 模式确实支持某些聚合函数中的 ORDER BY 子句,包括 STRING_AGG,例如:
#standardSQL
select string_agg(t.x order by t.y)
from unnest([struct<x STRING, y INT64>('a', 5), ('b', 1), ('c', 10)]) t
会导致
b,a,c
文档在这里:https://cloud.google.com/bigquery/docs/reference/standard-sql/functions-and-operators#using-order-by-with-aggregate-functions
关于sql - BigQuery GROUP_CONCAT 和 ORDER BY,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31368235/