0


hive 数组和string互转

看了一些人写的hive数组和string互转的文章简直就是坑爹胡扯, 所以还是写一个靠谱点的例子

数组转string

使用函数:concat_ws(',',collect_set(column))

说明:collect_list 不去重,collect_set 去重。collect_list ,collect_set 产生的是一个数组对象 ["grey","black"] , concat_ws 把数组对象转成 字符串 , column的数据类型要求是string

select user_id,

concat_ws(',',collect_list(order_id)) as order_value from col_lie

group by user_id

limit 10;

//结果(简写)

user_id order_value

104399 1715131,2105395,1758844,981085,2444143

srign 转数组

 split('a,b,c,d,e,f,g',',')

问为啥要把数组转string ?

select
concat( '(\'' , concat_ws('\',\'' ,(collect_set( 问题字段 ) )) ,'\')' )
from
查询

一个简单的使用就是 用上面这一段排查明细的时候 是不是拷贝出结果

然后给到别人就是 一个 ('问题值1','问题值2') 的样式, 需要排查问题的人直接就贴到自己的mysql 或者其他上面 一个 in后面跟上 就行了

还有就是其他具体业务运用了, 这个也有拼接好给别人直接展示的

标签: 数据库

本文转载自: https://blog.csdn.net/lb876864380/article/details/128664102
版权归原作者 不許人間見白頭 所有, 如有侵权,请联系我们删除。

“hive 数组和string互转”的评论:

还没有评论