解析与蜂巢嵌套的json不确定的数量

时间:2019-07-17 17:19:54

标签: json hive

我想用Hive解析JSON。

我知道解析JSON的常用功能,但是问题是JSON的结构。 它的数字不确定,tracks.features可能是2,也许是10,也许是100,我需要取坐标字段。

是否可以在Hive上执行此操作?

这是JSON:

{
    "track":{
        "features":[
            {
                "geometry":{
                    "coordinates":[
                        -3.7175826,
                        40.4342724997222
                    ]
                }
            },
            {
                "geometry":{
                    "coordinates":[
                        -3.7170288,
                        40.4324255
                    ]
                }
            }
        ]
    }
}

enter image description here

1 个答案:

答案 0 :(得分:0)

with your_data as(
select '{
    "track":{
        "features":[
            {
                "geometry":{
                    "coordinates":[
                        -3.7175826,
                        40.4342724997222
                    ]
                }
            },
            {
                "geometry":{
                    "coordinates":[
                        -3.7170288,
                        40.4324255
                    ]
                }
            }
        ]
    }
}' as json
)

select get_json_object(json, '$.track.features[0].geometry.coordinates[1]') as latitude1 from your_data d

返回:

OK
40.4342724997222

耗时:0.058秒,已访存:1行