AWS Athena地图查询

时间:2017-10-12 02:28:28

标签: amazon-athena

该表有一个这样的列,

data  MAP<string, string>

和行,

id | data
1  | {"foo": 123}
2  | {"bar": 456}

然后,我如何搜索数据[“bar”] = 456? 我尝试了,但它显示错误“列'栏'无法解决”

2 个答案:

答案 0 :(得分:1)

我发现我错了。 “不应该用于查询。”应该使用! 所以,

WHERE data['foo'] = 123

将会有效。

答案 1 :(得分:0)

我遇到了同样的问题,必须通过向所有地图数据添加相同的属性来解决。

如果您想查询每个地图数据,则需要foobar

如果该属性不存在,则不知道如何解析该列。

如果您按原样访问整个对象,则无需拥有它。

希望有所帮助。