【问题标题】:Parse Json - CTE & filtering解析 Json - CTE 和过滤
【发布时间】:2023-01-20 03:27:00
【问题描述】:

我需要删除一些记录(包含 t)以便解析/展平数据列。 CTE 中创建“选项卡”的查询是独立工作的,但是当在 CTE 内部时,我在尝试解析 json 时遇到相同的错误,如果我没有尝试过滤掉罪魁祸首的话。

with tab as (
 select * from table
 where  data like '%t%')
 select b.value::string, a.* from tab a, 
 lateral flatten( input => PARSE_JSON( a.data) ) b ;
 ;

错误:

 Error parsing JSON: unknown keyword "test123", pos 8

示例数据:

Date           Data
1-12-12         {id: 13-43}
1-12-14         {id: 43-43}
1-11-14         {test12}
1-11-14         {test2}
1-02-14         {id: 44-43}

【问题讨论】:

    标签: sql json snowflake-cloud-data-platform


    【解决方案1】:

    可以将 PARSE_JSON(a.data) 替换为 TRY_PARSE_JSON(a.data) ,这将产生 NULL 而不是无效输入的错误。

    更多信息:TRY_PARSE_JSON

    【讨论】:

      猜你喜欢
      • 2017-04-25
      • 1970-01-01
      • 1970-01-01
      • 2018-05-15
      • 2018-07-07
      • 1970-01-01
      • 2023-01-17
      • 2018-05-16
      • 1970-01-01
      相关资源
      最近更新 更多