google-bigquery - 将包含重复字段的结果集保存到目标表

标签 google-bigquery

我想将以下查询的结果集保存到一个表中。

SELECT

g, NEST(x) AS a

FROM 

(SELECT 1 AS g, 10 AS x), (SELECT 1 AS g, 20 AS x), (SELECT 1 AS g, 30 AS x), 
(SELECT 2 AS g, 100 AS x), (SELECT 2 AS g, 200 AS x)  

GROUP BY g

我使用带有选项“如果为空则写入”、“允许大结果:是”、“展平结果:否”和“查询优先级:交互”的选项的网络查询编辑器。我不想扁平化查询结果。

查询失败:“错误:意外。请重试。”

当我使用以下架构创建表并选择“附加到表”选项时,我收到了同样的错误。

{
    "fields": [
        {
            "name": "g",
            "type": "integer"
        },
        {
            "name": "a",
            "type": "integer",
            "mode": "repeated"
        }
    ]
}

感谢您的任何建议。

最佳答案

这是 NEST 函数和 flattenResults 设置为 false 的已知问题:目前两者不兼容。我们想解决这个问题,但我没有预计到达时间,因为根本问题很重要。

如果您有一个包含重复字段的现有表,您应该能够成功地SELECT 它并使用将 flattenResults 设置为 false 将其输出为重复字段。

关于google-bigquery - 将包含重复字段的结果集保存到目标表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26933136/

相关文章:

google-cloud-platform - 从谷歌存储中的多个文件夹创建多个bigquery表

java - 如何以最佳方式使用 Apache Beam 和 BigQueryIO 从多个 BigQuery 表中检索数据?

google-bigquery - BigQuery : Error 500 on streaming insert via Java API

python - 使用 python 将嵌套 BigQuery 数据导出到云存储

java - 如何提高 BigQuery 读取性能

google-bigquery - 如何在 BigQuery 中设置项目默认的最大计费字节数?

google-sheets - "Failed to read the spreadsheet. Error code: PERMISSION_DENIED"- Tableau 自定义查询

google-bigquery - 在 BigQuery 中以编程方式创建数据集 ID

python - 使用 Dataflow 和 Apache Beam (Python) 将数据从 Pub/Sub 流式传输到 BigQuery 时出现问题

sql - 如何计算同一列中不同类别的日期之间的差异?