【发布时间】:2017-11-29 22:41:49
【问题描述】:
我想在 Presto 中解析的表中有一个 VARCHAR 类型的 JSON 列 points。例如:
points = {"0": 0.2, "1": 1.2, "2": 0.5, "15": 1.2, "20": 0.7}
我只想选择键 "0", "2" and "20" 的值。如何使用 Presto 的 UNNEST 功能来获取它们。到目前为止我所做的是:
select t.value from myTable CROSS JOIN UNNEST(points) AS t(key, value) limit 1
但这给出了这个错误:
Cannot unnest type: varchar
Update:
我运行了以下查询并得到了结果,但它从 JSON 返回一个随机键值对,而我需要特定的键。
select key, value from myTable CROSS JOIN UNNEST(SPLIT_TO_MAP(points, ',', ':')) AS t(key, value) limit 1
【问题讨论】: