当前位置: 首页 > news >正文

重庆餐饮网站设计水利工程建设监理网站

重庆餐饮网站设计,水利工程建设监理网站,阳江市人才招聘网,南京溧水城市建设集团网站1、Explode炸裂函数 将hive某列一行中复杂的 array 或 map 结构拆分成多行(只能输入array或map) 语法: select explode(字段) as 字段命名 from 表名; 举例: 1)explode(array)使得结果中将array列表里的每个元素生…

1、Explode炸裂函数

将hive某列一行中复杂的 array 或 map 结构拆分成多行(只能输入array或map)

语法:

select explode(字段) as 字段命名 from 表名;

举例:

1)explode(array)使得结果中将array列表里的每个元素生成一行

select explode(array('1','2','3')) DD

2)explode(map)使得结果中将map里的每一对元素作为一行,key为一列,value为一列

select explode(map('A','1','B','2','C','3'));
select explode(map('Chinese','100','Math','88','English','38'));

局限性:

1、不能关联原有的表中的其他字段

2、不能与group by、cluster by、distribute by、sort by联用

3、不能进行UDTF嵌套

2、posexplode()函数

explode():对一列进行炸裂可以使用

posexplode():对两列进行多行转换,可以将index和数据都取出来,使用两次posexplode并令两次取到的index相等即可

举例:

select posexplode(collect_set('AA'))

collect_set:将某字段进行去重处理,返回array类型

1)实例一


--数据准备
with tmp_cust_no as(
select '6738314' cust_no,'#$}' cd_str
union all
select '4198898' cust_no,'#$(}' cd_str
),tmp_cd_desc as(
select '#' cd, '大宗交易' cd_desc
union all
select '$' cd, '北交所股票' cd_desc
union all
select '}' cd, '不定项' cd_desc
union all
select '(' cd, '委托应急' cd_desc
),--1、用 posexplode 函数炸裂cd_str字段成行
tmp_cd_str as(
select 
t.cust_no,
t.cd_str, --需要遍历的字符串
pos, --索引
substr(t.cd_str,pos+1,1) cd_str1 , --获取字符串中索引位置的值
substr(t.cd_str,0,pos+1) cd_str2 --从起始位置开始到当前位置的字符串
from 
(select A.*, posexplode(split(space(length(cd_str)-1),' ')) 
from tmp_cust_no A 
where length(trim(A.cd_str))>0) t
),--2、匹配码表数据
--tmp_cd_str_desc as()
select A.cust_no,
A.cd_str,
concat_ws(',',collect_set(B.cd_desc)) cd_str_desc
from tmp_cd_str A
inner join tmp_cd_desc B on A.cd_str1=B.cd
group by A.cust_no,
A.cd_str

步骤1:用 posexplode 函数炸裂cd_str字段成行 的输出:

码表匹配输出结果:

3、Lateral View

Lateral View配合 split, explode 等UDTF函数一起使用,它能够将一列数据拆成多行数据,并且对拆分后结果进行聚合,即将多行结果组合成一个支持别名的虚拟表。相当于拆出一张虚拟表,与原表进行关联。

http://www.yayakq.cn/news/541316/

相关文章:

  • 网站建设属不属于无形资产手机网站制作公司 广州
  • 上传网站怎么安装免备案cdn
  • 怎么用dw做静态网站凡科建站网站建设
  • 云南微网站建设的公司有哪些wordpress do_action
  • 关于手机的网站有哪些内容wordpress站群教程
  • 做英文网站有哪些功能性质网站有哪些网站
  • 中国空间站天宫课堂平板电脑网站模板
  • 合肥网站建设模板系统wordpress分类404
  • 教育系统网站建设深圳楼市最新消息
  • 广州做网站需要多少钱网站建设 哪家好
  • 廊坊永清网站建设wordpress有几张表
  • 安居客房产官方网站福州网站改版
  • 网站制作的评价标准广告优化师没经验怎么面试
  • 网站简繁体转换.rar小程序注册收费吗
  • 网站制作容易吗app网站平台搭建
  • 中国最大的手表网站几个好用的在线网站
  • 网站能带来什么seo关键词是怎么优化的
  • 石家庄网站建设报价郑州新一网站建设
  • 做cpa广告建什么网站好wordpress需要做哪些设置
  • 旅游景区网站建设网站的跟目录
  • 做app_需要先做网站吗东莞百度搜索网站排名
  • 上海建设网站的网站企业为什么要建立战略联盟
  • 猪八戒网仿照哪个网站做的做棋牌网站建设哪家好
  • 淘宝网站是用什么开发的html最简单的代码
  • 怎样制作网站和软件wordpress插件免费
  • 网站设计就业要求河南制作网站公司
  • 建设和住房保障部 网站网站放到iis如何做指向
  • 北京市文化局政务网站建设项目合肥宣传片制作公司六维时空
  • 大型网站是用哪种数据库做的组建网站
  • 大连智能模板建站上海做一个公司网站多少钱