我很高兴使用"group_concat" BigQuery function执行查询。当我直接在BigQuery接口中执行查询时,查询成功结束,但是当我尝试通过Node js执行该查询时,出现了以下错误:
errors:
[ { domain: 'global',
reason: 'invalidQuery',
message: 'Function not found: group_concat at [4:3]',
locationType: 'other',
location: 'query' } ]
代码不是问题,因为它执行简单的查询没有任何问题。
我的查询:
SELECT
st_hub_session_id,
num_requests,
group_concat( group.code, '|' ) as Codes
FROM
table.name
GROUP BY
st_hub_session_id,
group_concat
LIMIT
1000
哪里可能是问题?
答案 0 :(得分:2)
在标准SQL中使用STRING_AGG
而不是旧版GROUP_CONCAT
。您可以通过取消选中“显示选项”下的“使用旧版SQL”或者将#standardSQL
置于查询顶部,在UI中使用标准SQL。另请参阅Enabling Standard SQL。
答案 1 :(得分:1)
BigQuery有两种SQL模式,标准SQL和传统SQL。您可能将应用程序设置为默认的标准SQL,并通过接口运行LegacySQL。
尝试使用pragma
运行查询#legacySQL
select group_concat(col) from (select '1' as col)
group_concat函数仅在旧版SQL中可用,并且它不是标准SQL 2011的一部分。