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

Snowflake外部表JSON查询报错:无效标识符'ITEMS.VALUE'求助

Snowflake处理YouTube分类JSON数据错误修复

错误原因:LATERAL FLATTEN(items) 展开数组后,每个数组元素的引用是直接用 VALUE,而非 items.VALUE——items 是你要展开的数组字段,FLATTEN 会将其拆分为行,每行的元素由 VALUE 变量表示。

根据外部表的JSON结构,提供两种修正方案:

方案1:外部表顶层字段为items数组

如果外部表直接存储的是items数组类型字段,使用以下SQL:

CREATE OR REPLACE TABLE table_youtube_category AS
SELECT
  VALUE:"snippet"."title"::STRING AS title,
  VALUE:"id"::INT AS id
FROM e_table_youtube_category,
LATERAL FLATTEN(INPUT => items);

方案2:外部表JSON包裹在顶层对象中

如果外部表的JSON数据是类似{"items": [{"id": "...", "snippet": {...}}, ...]}的结构,需要先指定顶层的items路径:

CREATE OR REPLACE TABLE table_youtube_category AS
SELECT
  VALUE:"snippet"."title"::STRING AS title,
  VALUE:"id"::INT AS id
FROM e_table_youtube_category,
LATERAL FLATTEN(INPUT => $1:items);

补充说明:

  • 使用INPUT =>显式指定要展开的数组,能避免字段名歧义
  • 提前确认items字段确实是数组类型,否则FLATTEN无法正常执行展开操作

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 16:03:12