数据库
首页 > 数据库> > Hive SQL处理电费数据行转列

Hive SQL处理电费数据行转列

作者:互联网

Hive SQL处理缺失日期补齐

一、题目

给定一个表temp,字段是 user_id,clo1,col2…col12 12各字段代表12个月电费,求最终结果展现:user_id,month,money

二、处理逻辑

with temp as (select 1 as user_id,212 as 1month,432 as 2month,887 as 3month) select user_id,a.month,a.money from temp lateral view explode(map('Jar',1month,'Sec',2month,'March',3month)) a as month,money;

原数据:
在这里插入图片描述
结果数据:
在这里插入图片描述

巧妙使用map函数将月份和电费处理为key,value的数据结构,再通过explode炸裂函数获取每个元素对应的key和value值并展示为一行数据

参考资料:
添加链接描述

标签:电费,temp,money,Hive,month,转列,user,SQL,id
来源: https://blog.csdn.net/sinat_30371347/article/details/120733692