问题描述/异常栈

    使用get_json_object函数提取不出json中的数组的信息

    FAQ-spark中get_json_object提取json中的数组内容 - 图1 数据: {"contentTag":{"id":2300468,"tagGroupName":"新社区内容标签","tagList":[{"id":2867809,"desc":"情感关系-非情感"},{"id":2859829,"desc":"文本类型-提问"},{"id":2862849,"desc":"泛音乐"},{"id":2877922,"desc":"时效热点-中国说唱巅峰对决"},{"id":2865819,"desc":"兴趣爱好-音乐"},{"id":2865818,"desc":"兴趣爱好-明星"}]}}

    解决方案

    使用姿势不对,[0]  jsonpath 定义的语法,用 .<field> 访问数组是未定义的行为。故需要使用get_json_object(rcmdtag, '$.contentTag.tagList[*].id')而不是get_json_object(rcmdtag, '$.contentTag.tagList.id')

    问题原因

    使用姿势不对

    作者:刘思伟