【问题标题】:How to extract a value from JSON in Presto?如何从 Presto 中的 JSON 中提取值?
【发布时间】:2021-03-01 20:48:12
【问题描述】:

{"xyz":{"aaabc":"80.00","ccccd":null,"npccc":"0.00","txnid":"pca","diccsc":"0.00"}}

我必须提取 xyz 其中 xyz 是动态变量(在某些情况下它可能是 xyz 在其他情况下它可能是 abc 或任何东西)

【问题讨论】:

  • 因为你不能使用变量名。这是如何识别的?通过一些正则表达式或索引(只是字符串)?
  • 您可以尝试从第二个花括号到倒数第二个花括号的字符串连接。

标签: sql json presto trino


【解决方案1】:

假设你的数据是varchar,你可以

  • 转换为json
  • 投到map(varchar, json)
  • 从带有map_entries 的映射中提取条目
  • 获得第一个
SELECT map_entries(CAST(CAST(my_column AS json) AS map(varchar, json))[1]
FROM ...

【讨论】:

    猜你喜欢
    • 2021-05-06
    • 2020-05-16
    • 2020-11-07
    • 2020-01-21
    • 2017-11-30
    • 2020-01-08
    • 2021-05-25
    • 1970-01-01
    • 2020-05-01
    相关资源
    最近更新 更多