在BigQuery标准SQL中,与Legacy SQL中的GROUP_CONCAT_UNQUOTED等效的函数是STRING_AGG。STRING_AGG函数用于将多个字符串连接为一个字符串,并可以指定分隔符。
以下是使用STRING_AGG函数的示例代码:
-- 使用GROUP_CONCAT_UNQUOTED函数的Legacy SQL查询
SELECT
customer_id,
GROUP_CONCAT_UNQUOTED(product_name) AS products
FROM
mytable
GROUP BY
customer_id
-- 使用STRING_AGG函数的标准SQL查询
SELECT
customer_id,
STRING_AGG(product_name, ', ') AS products
FROM
mytable
GROUP BY
customer_id
在上面的示例中,mytable是包含customer_id和product_name列的表。GROUP_CONCAT_UNQUOTED函数在Legacy SQL中将product_name连接为一个字符串,而STRING_AGG函数在标准SQL中使用逗号和空格作为分隔符将product_name连接为一个字符串。
请注意,标准SQL中的STRING_AGG函数要求指定分隔符,并且分隔符必须是字符串常量。在上面的示例中,我们使用逗号和空格作为分隔符。如果不指定分隔符,STRING_AGG函数将默认使用逗号作为分隔符。