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

BigQuery SQL如何提取结构体数组中指定字段的全量唯一值

BigQuery 提取数组结构体指定字段去重实现方案

核心实现SQL

将下面语句中的项目、数据集、表名替换为你自己的实际资源即可:

SELECT DISTINCT struct_item.a AS a
FROM `your_project.your_dataset.your_table_name`,
UNNEST(Data) AS struct_item
-- 可选:如果需要过滤a为NULL的情况可以打开下面注释
-- WHERE struct_item.a IS NOT NULL
ORDER BY a

逻辑说明

  • 用UNNEST(Data)将每行的结构体数组拆分为多行,每行对应原数组里的单个结构体,别名设为struct_item
  • 直接提取struct_item.a即可拿到所有结构体中的a字段值
  • 通过DISTINCT关键字对所有a值全局去重
  • 末尾的ORDER BY a可以让输出结果按升序排列,不需要可直接删除

效果验证

用你给出的示例测试:

原表共2行数据,第一行Data数组拆分为2个结构体,提取a值为1、3;第二行Data数组拆分后提取a值为5、6,去重后最终输出结果为1、3、5、6,完全匹配预期。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 06:45:00