【发布时间】:2019-10-03 16:21:38
【问题描述】:
我的数据是VARCHAR 格式。我想拆分这个数组的两个元素,这样我就可以从 JSON 中提取一个键值。
数据格式
[
{
"skuId": "5bc87ae20d298a283c297ca1",
"unitPrice": 0,
"id": "5bc87ae20d298a283c297ca1",
"quantity": "1"
},
{
"skuId": "182784738484wefhdchs4848",
"unitPrice": 50,
"id": "5bc87ae20d298a283c297ca1",
"quantity": "4"
},
]
例如我想从上面的列中提取skuid。
所以我提取后的数据应该是这样的:
1 5bc87ae20d298a283c297ca1
2 182784738484wefhdchs4848
强制转换为数组也不起作用:
SELECT CAST(col AS ARRAY)
给出以下错误:
未知类型:数组
所以我无法取消嵌套数组。
如何在Presto Athena中解决这个问题?
【问题讨论】:
-
是。你能得到一个解决方案来提取雅典娜的数据吗?我刚刚尝试了以下解决方案,结果出现错误:
INVALID_CAST_ARGUMENT: Cannot cast JSON to array(row(skuid varchar))
标签: arrays json presto amazon-athena trino