Hive 从 json 行中选择一个特定的字符串
Posted
技术标签:
【中文标题】Hive 从 json 行中选择一个特定的字符串【英文标题】:Hive select a particular string from a json row 【发布时间】:2017-08-10 05:06:05 【问题描述】:我正在尝试分析 Athena 中的 AWS 云跟踪日志,为此,如果我选择安全组添加 入站规则事件,它会在 elements 列中返回以下字符串。 p>
"groupId":"sg-XXXX","ipPermissions":"items":["ipProtocol":"tcp","fromPort":22,"toPort":22,"groups":,"ipRanges":"items":["cidrIp":"0.0.0.0/0"],"prefixListIds":]
但是我需要 groupId
从那个 json 结果中单独获得。那么我怎样才能得到呢?
注意:表是外部表
【问题讨论】:
【参考方案1】:select json_extract_scalar('"groupId":"sg-XXXX","ipPermissions":"items":["ipProtocol":"tcp","fromPort":22,"toPort":22,"groups":,"ipRanges":"items":["cidrIp":"0.0.0.0/0"],"prefixListIds":]','$.groupId');
OK
sg-XXXX
【讨论】:
感谢您的回答,在 AWS Athenaget_json_object
未注册:(
请改用json_extract_scalar
以上是关于Hive 从 json 行中选择一个特定的字符串的主要内容,如果未能解决你的问题,请参考以下文章