在BigQuery上使用STRING_AGG时,能够发现内存不足错误吗?

问题描述:

This question解释当您尝试使用BigQuery中的STRING_AGG聚合太多内容时发生的情况。在BigQuery上使用STRING_AGG时,能够发现内存不足错误吗?

有没有办法让我可以做一些像“尝试STRING_AGG,但如果数据太多,返回null(或其他)”?所以我可以从错误中回退而不会失败。

What is the max limit of group_concat/string_agg in bigquery output? Elliott解释了为什么STRING_AGG可能会产生内存不足错误。

要避免这个错误,你可以使用LIMIT停止一定数量的字符串后汇总:

#standardSQL 
SELECT STRING_AGG(CONCAT(word, corpus) LIMIT 10) AS words 
FROM `bigquery-public-data.samples.shakespeare` 
CROSS JOIN UNNEST(GENERATE_ARRAY(1, 1000));