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

查询含REPEATED类型RECORD字段line_items的订单表SQL执行报错求助

报错排查及解决方案

错误原因

你表中的line_items字段是REPEATED类型的嵌套RECORD,本质是数组结构,无法直接通过line_items.vfsku的方式直接引用数组内的子字段做等值过滤,现有查询语法不符合嵌套数组字段的查询规则,因此触发报错。

修复方案

根据你的查询需求可以选择两种写法:

场景1:查询所有包含对应sku行项目的订单,保留订单完整结构(所有行项目都保留)

使用EXISTS搭配UNNEST做存在性校验,SQL语句如下:

SELECT * FROM testdata.orders 
WHERE EXISTS (
  SELECT 1 FROM UNNEST(line_items) AS item
  WHERE item.vfsku = 'VFPQ123_VT1'
)

场景2:仅返回符合条件的行项目,将嵌套的行项目拆为独立行返回

直接关联打平数组后过滤,SQL语句如下:

SELECT o.*, item.* 
FROM testdata.orders o,
UNNEST(line_items) AS item
WHERE item.vfsku = 'VFPQ123_VT1'

如果不需要保留原订单的line_items数组字段,可以调整选择列表剔除冗余字段:

SELECT o.* EXCEPT(line_items), item.* 
FROM testdata.orders o,
UNNEST(line_items) AS item
WHERE item.vfsku = 'VFPQ123_VT1'

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 09:06:10