Hive-行转列(explode)】的更多相关文章

实例一:来源: https://www.cnblogs.com/kimbo/p/6208973.html 行转列 (对某列拆分,一列拆多行) 使用函数:lateral view explode(split(column, ',')) num eg: 如表:t_row_to_column_tmp 数据如下,对tag列进行拆分 结果: 列转行 (根据主键,进行多行合并一列) 使用函数:concat_ws(',',collect_set(column))   说明:collect_list 不去重,c…
行转列: concat_ws 列转行: explode…
先贴出一个示例: 参考链接…
一.问题 hive如何将 a ,, b , c 转化成为: a a a b b c 二.原始数据 cat row_column.txt a ,, b , c 三.解决方案 3.1 遍历每一列 3.1.1 创建表 -- 创建表 create table tmp.row_column ( col1 string, col3 string ) row format delimited fields terminated by '\t' stored as textfile; -- 载入数据 load…
select regexp_extract(a.col2,'(phonenum=\")(.*?)\"',2) user_device, regexp_extract(a.col13,'(imsicode=\")(.*?)\"',2) imsi, regexp_extract(a.col12,'(imeicode=\")(.*?)\"',2) imei, call_log from (select * from ods_sso_dislocatio…
1. 数据源信息 {"student": {"name":"king","age":11,"sex":"M"},"sub_score":[{"subject":"语文","score":80},{"subject":"数学","score":80},…
一.行转列的使用 1.问题 hive如何将 a       b       1a       b       2a       b       3c       d       4c       d       5c       d       6 变为: a       b       1,2,3c       d       4,5,6 2.数据 test.txt a       b       1 a       b       2 a       b       3 c       d …
行转列 原始数据: 需求: 把星座和血型一样的人归类到一起.结果如下: 射手座,A 大海|凤姐 白羊座,A 孙悟空|猪八戒 白羊座,B 宋宋 实现: vi person_info.txt 孙悟空 白羊座 A 大海 射手座 A 宋宋 白羊座 B 猪八戒 白羊座 A 凤姐 射手座 A create table person_info ( name string, constellation string, blood_type string ) row format delimited fields…
1.列转行 1.1 相关函数的说明: concat(string1,string,...) //连接括号内字符串,数量不限. concat_ws(separator,string1,string2,...) //连接括号内字符串,数量不限,连接符为separator. collect_set(col) //此函数只接受基本类型,主要是将字段的值进行去重汇总,产生array类型字段. 1.2 例子: 创建表:create table person_info( name string, conste…
目录 一.行转列 相关函数 concat concat_ws collect_set collect_list 需求 需求分析 数据准备 写SQL 二.列转行 相关函数 split explode lateral view 需求 需求分析 数据准备 写SQL 一.行转列 相关函数 concat CONCAT(string A/col, string B/col-):对字符串按次序进行拼接 返回类 concat_ws concat_ws(string SEP, string A, string B…