You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在BigQuery中将JSON格式列嵌套到另一JSON列中

BigQuery 嵌套JSON列构造解决方案

转义问题的本质是child_col为字符串类型,即使内容是合法JSON,直接参与JSON构造时会被识别为普通字符串而非嵌套JSON对象,需要先将其解析为BigQuery原生的JSON类型再参与构造。

最简实现方案

使用BigQuery原生JSON_OBJECT函数直接构造目标JSON,再按需转字符串即可:

-- 输出为字符串类型的parent_col
parent_col = TO_JSON_STRING(JSON_OBJECT(
  "code": "parent",
  "child": PARSE_JSON(child_col)
))

如果允许parent_col为JSON类型,直接去掉外层TO_JSON_STRING即可。

兼容原有STRUCT写法的调整方案

如果要保留原有STRUCT的写法逻辑,仅需对child_col做JSON解析处理:

parent_col = TO_JSON_STRING(STRUCT(
  'parent' AS code,
  PARSE_JSON(child_col) AS child
))

之前尝试失败的原因

  • JSON_VALUE仅支持提取JSON中的标量值(字符串、数字、布尔值等),无法提取完整JSON对象,因此返回null
  • 旧版本BigQuery中JSON_QUERY/JSON_EXTRACT返回结果为字符串类型,即使提取到完整JSON内容,后续转JSON字符串时依然会被识别为普通字符串,触发转义

内容的提问来源于stack exchange,提问作者user2268997

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 02:36:03