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

Snowflake使用Lateral Flatten展开JSON字段返回NULL问题求助

问题排查与解决

你的SQL执行后字段全为NULL的核心原因是**LATERAL FLATTEN的输入参数写法错误**,导致未正确解析JSON数组,具体修正如下:

错误根源

  1. Flatten的input参数误用了raw_data:transcript语法——这种写法用于访问Variant类型字段的嵌套属性,但transcript本身就是存储JSON数组的Variant字段,直接写字段名即可。
  2. 因Flatten输入错误,a.value未能正确获取数组中的JSON对象,后续属性提取自然返回NULL。

修正后的SQL

SELECT
    raw_data.id,
    raw_data.conv_type,
    raw_data.transcript,
    a.value:by::VARCHAR AS "by",
    a.value:text::VARCHAR AS "text",
    a.value:time::VARCHAR AS "time"
FROM raw_data,
LATERAL FLATTEN(input => transcript) a;

补充说明

  • 若transcript实际存储为字符串类型(而非Variant),需先转换为JSON格式:input => PARSE_JSON(transcript)。
  • 建议显式列出原表字段(而非用*),避免展开后的字段与原表字段重名导致歧义。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 13:42:56