[ https://issues.apache.org/jira/browse/HIVE-2927?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16660136#comment-16660136 ]
Michael Chirico commented on HIVE-2927: --------------------------------------- workaround is to use lateral view json_tuple select cdotd from my_tbl lateral view json_tuple(json, ''c.d") J as cdotd > Allow escape character in get_json_object > ----------------------------------------- > > Key: HIVE-2927 > URL: https://issues.apache.org/jira/browse/HIVE-2927 > Project: Hive > Issue Type: Improvement > Components: Serializers/Deserializers > Affects Versions: 0.8.1, 0.9.0 > Reporter: Sean McNamara > Priority: Major > Attachments: HIVE-2927.1.patch.txt > > Original Estimate: 0h > Remaining Estimate: 0h > > *Background:* > get_json_object extracts json objects from a json string based on a specified > path. > *Problem:* > The current implementation of get_json_object can't see keys with a '.' in > them. Our data contains '.' in the keys, so we have to filter our json keys > through a streaming script to replace '.' for '_'. > *Example:* > {{json = {"a":{"b": 1}, "c.d": 2}}} > {{get_json_object(json, "$.a.b") returns: 1}} > {{get_json_object(json, "$.c.d") returns: NULL}} > In the present implementation of get_json_object, c.d is not addressable. > *Proposal:* > The desired behavior would be to allow the JSON path to be escape-able, like > so: > {{get_json_object(json, '$.c\\\.d') would return: 2}} -- This message was sent by Atlassian JIRA (v7.6.3#76005)