hivesql解析json格式的key与value

2023-11-09


json格式示例:
{“city_code”:“340100”,“county_code”:“340111”,“orientation”:“东”,“road_id”:35204271,“speed”:35.72}

解析json格式中的key

我们可以看到这个数据还是很规整的,首先先将这个json数据中的花括号:“{}”给去除,并将逗号:“,”也都给替换成冒号:“:”,双引号也给剔除,之后进行行列转换,选取需要的
1、剔除双引号、花括号
select translate(’{“city_code”:“340100”,“county_code”:“340111”,“orientation”:“东”,“road_id”:35204271,“speed”:35.72}’,’{}""’,’’)
在这里插入图片描述

2、逗号替换成冒号
select
regexp_replace(
translate(’{“city_code”:“340100”,“county_code”:“340111”,“orientation”:“东”,“road_id”:35204271,“speed”:35.72}’,’{}""’,’’),’,’,’:’
)
在这里插入图片描述

3、行列转换
select pos+1,val
from
(
select
regexp_replace(
translate(’{“city_code”:“340100”,“county_code”:“340111”,“orientation”:“东”,“road_id”:35204271,“speed”:35.72}’,’{}""’,’’),’,’,’:’
) str
) t lateral view posexplode(split(str,’:’)) t1 as pos,val
在这里插入图片描述
4、选取奇数行
select rn,val as key
from
(
select pos+1 as rn,val
from
(
select
regexp_replace(
translate(’{“city_code”:“340100”,“county_code”:“340111”,“orientation”:“东”,“road_id”:35204271,“speed”:35.72}’,’{}""’,’’),’,’,’:’
) str
) t lateral view posexplode(split(str,’:’)) t1 as pos,val
) t3
where rn%2=1
在这里插入图片描述

解析json格式中的value

1、get_json_object()函数
语法:get_json_object(json_string, ‘$.key’)
说明:解析json的字符串json_string,返回path指定的内容。如果输入的json字符串无效,那么返回NULL。这个函数每次只能返回一个数据项。

select
get_json_object(’{“city_code”:“340100”,“county_code”:“340111”,“orientation”:“东”,“road_id”:35204271,“speed”:35.72}’,’ . r o a d i d ′ ) , g e t j s o n o b j e c t ( ′ " c i t y c o d e " : " 340100 " , " c o u n t y c o d e " : " 340111 " , " o r i e n t a t i o n " : " 东 " , " r o a d i d " : 35204271 , " s p e e d " : 35.72 ′ , ′ .road_id'), get_json_object('{"city_code":"340100","county_code":"340111","orientation":"东","road_id":35204271,"speed":35.72}',' .roadid),getjsonobject("citycode":"340100","countycode":"340111","orientation":"","roadid":35204271,"speed":35.72,.speed’)

在这里插入图片描述
2、json_tuple()函数
在这里插入图片描述

感谢阅读,我是啊帅和和,一位大数据专业大四学生,祝你快乐。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

hivesql解析json格式的key与value 的相关文章

随机推荐

  • nodejs如何判断一个文件、文件夹是否存在

    需要使用nodejs的fs模块 引入 var fs require fs 判断的方法 fs exists path callback path 判断的文件夹 文件的路径 callback 回调函数 fs exists dirName fun
  • http响应报文详解

    http响应报文的组成 http响应报文由响应行 响应头 响应体三部分组成 响应行主要包括 响应协议 这个与请求协议对应 比如http 状态码200 状态码的描述OK 响应头就是一些常见的响应名对应的响应值 响应参数就是我们真正需要的从数据
  • C# 对文件进行MD5计算

    今天在做需求的时候 需要把MD5的计算集成到应用中 其实计算MD5本身并不难 C 本身提供了计算Md5值的工具 using FileStream fs File OpenRead path using var crypto MD5 Crea
  • 【StyleGAN论文精读CVPR_2019】A Style-Based Generator Architecture for Generative Adversarial Networks

    StyleGAN论文精读CVPR 2019 A Style Based Generator Architecture for Generative Adversarial Networks 一 前言 Abstract 1 Introduct
  • 关于Android Activity的configChanges属性的用法,设置屏幕旋转时activity不重新创建

    这篇文章主要是浅析一下activity的configChanges这个属性的 这个属性可能对于一些刚入门的Android开发者来说不是很常见 但是对于做过手机播放界面的同志们这个属性恐怕没人不知道 大家都知道 当手机横竖屏切换时 在不经过设
  • sqli-labs靶场15-19过关小记

    level 15 首先判断是否有sql注入攻击 先输入万能密码 or 1 1 试了试发现登录成功 可以看到是存在sql注入的 输入单引号后不报错 推断可能是盲注 分析一下源码 可以看到报错信息是被注释的 所以可以采用布尔型或时间型盲注 因为
  • 大数据HA集群搭建

    1环境准备 集群规划 ip 主机名 安装的软件 192 168 232 132 HA01 jdk HA0doop NameNode DFSZKFailoverController zkfc 192 168 232 133 HA02 jdk
  • 大数据毕业设计人体跌倒检测系统

    文章目录 前言 1 实现方法 传统机器视觉算法 基于机器学习的跌倒检测 SVM简介 SVM跌倒检测原理 算法流程 算法效果 实现代码 深度学习跌倒检测 最终效果 网络原理 最后 前言 背景和意义 在美国 每年在65岁以上老人中 平均每3人中
  • 设置html 头 缓存,html头文件设置常用之设置缓存

    pragma与no cache用于定义页面缓存 不缓存页面 为了提高速度一些浏览器会缓存浏览者浏览过的页面 通过下面的定义 浏览器一般不会缓存页面 而且浏览器无法脱机浏览 常见的取值有private no cache max age mus
  • CodeSmith 使用教程: 总结

    前面基本介绍了CodeSmith的基本用法和编写代码模板的基本方法 这只是CodeSmith功能的一部分 其它部分可以参考CodeSmith文档和类文件定义 此外可以参考CodeSmith附带的示例模板 为便于查询 列出所有文档如下 Cod
  • mysql jdbc reconnect,MySQL JDBC Timeout and AutoReconnect

    24 4 5 3 4 I have a servlet application that works fine for a day and then stops working overnight MySQL closes connecti
  • 教你Ubuntu安装python3.7,并更新python默认指向

    Ubuntu默认的python版本一般为python 2 x 因此需要手动安装自己需要的版本 并且将python的指向更新为自己的版本 先查看当前python的指向 ls l usr bin grep python 因为我这里已经安装好了p
  • 大型公司网络构建拓扑图(华为)

    今天简单了解一下 大型公司的网络搭建 对于很多大型公司来讲 网络的稳定性 会直接影响到公司的收益 比如 双十一的阿里巴巴 京东 等等 如果这个时候网络出现问题 对于公司的损失将会是不可估量的 可见公司网络稳定 对公司的重要性了 那接下来就给
  • 小鱼深度产品测评之:阿里云新款通用算力型ECS云服务器Universal实例,实力与能力并存的一款产品。

    ECS U实例评测 1 引言 2 购买流程 3 向导展示 4 实例 4 1 创建实例 4 2 迁移上云 4 3 查询功能 4 3 1 下拉框选项 4 3 2 查询结果保存 4 4 默认定位 4 5 分组 4 6 监控 4 6 1 查看监控大
  • Qt防止重复调用

    QT中要用到 类似按键防抖static void func to debounce int a qDebug lt lt a 1 lt lt debounce test 需要实现的函数 static void debounce test f
  • Dice系数(Dice coefficient)与mIoU与Dice Loss

    Dice系数和mIoU是语义分割的评价指标 在这里进行了简单知识介绍 讲到了Dice顺便在最后提一下Dice Loss 以后有时间区分一下在语义分割中两个常用的损失函数 交叉熵和Dice Loss 一 Dice系数 1 概念理解 Dice系
  • 在java中插入gif_在java程序中显示gif图片的代码

    import java awt import java awt image public class ImageCanvas extends Canvas Image image public ImageCanvas String name
  • rsync 未授权访问漏洞

    雨笋教育小编来分享干货了 感兴趣的可以一同探讨 0x00前言 rsync是Linux下一款数据备份工具 支持通过rsync协议 ssh协议进行远程文件传输 0x01漏洞原理 rsync协议默认监听873端口 如果目标开启了rsync服务 并
  • BUCK BOOST以及Charge Pump电路原理

    下文为个人总结三种常见的开关电源 如有疑问欢迎评论区讨论 BUCK 当开关管Q1驱动为高电平时 开关管导通 储能电感L1被充磁 流经电感的电流线性增加 同时给电容C1充电 给负载R1提供能量 当开关管Q1驱动为低电平时 开关管关断 储能电感
  • hivesql解析json格式的key与value

    目录 解析json格式中的key 解析json格式中的value json格式示例 city code 340100 county code 340111 orientation 东 road id 35204271 speed 35 72