美文网首页
Hive 行列转换

Hive 行列转换

作者: miss幸运 | 来源:发表于2018-06-05 11:45 被阅读31次

一、列转行
使用函数:lateral view explode(split(column, ',')) num
SQL代码
select id,tag,tag_new
from t_row_to_column_tmp lateral view explode(split(tag, ',')) num as tag_new
where id=212022894;
-- select a.da_db_id,reason from jsd_execute_output_java a
lateral view explode(split(a.output_otherreason,',')) b as reason
where a.dt='2018-06-04' and a.ht='15' -- 列转行 (对某列拆分,一列拆多行)

截图.png

二、行转列 (根据主键,进行多行合并一列)
使用函数:concat_ws(',',collect_set(column))
说明:collect_list 不去重,collect_set 去重。 column 的数据类型要求是 string


元数据截图.png

select id, concat_ws(',',collect_set(tag_new)) as tag_col
from t_column_to_row group by id;


去重复截图.png
select id, concat_ws(',',collect_list(tag_new)) as tag_col from t_column_to_row group by id;
不去重复数据.png

相关文章

  • Hive 行列转换

    一、列转行使用函数:lateral view explode(split(column, ',')) numSQL...

  • HIVE :行列转换

    举个栗子 a b 1a b 2a b 3c...

  • Hive 1.2.1 行列转换

    1. 借鉴 Hive_语法_行列转换 2. 开始 行转列 相关函数 CONCAT(string A/col, st...

  • 行列转换

    一行转多行 复制表格,然后右击鼠标选择转置复制 一列变多列 =IFERROR(OFFSET($A$2,IF(ROW...

  • Hive时间转换

    Hive时间转换 最近使用到hive时间转换很频繁,总结如下: 转换成小时 req_time是 "2016-11-...

  • SQL行转列,列转行

    SQL 行转列,列转行 行列转换在做报表分析时还是经常会遇到的,今天就说一下如何实现行列转换吧。 行列转换就是如下...

  • Shell - 行列转换

    在日常文本的处理中,我们经常会碰见行列转换的情况,以下为几种常见的行列转换命令: 方案一 基本思路:将所有内容存储...

  • SQL 行列转换

    前段时间有人问了一个问题,就是SQL的行列转换,当时有点懵没答上来,后来细细想一想,其实最近的一个项目就已经用到了...

  • MySQL行列转换

    score_1 score_2 RT,需求是将以上两种表样式互相转换: score_1转score_2,很简单: ...

  • 行列向量转换

    doc: https://docs.scipy.org/doc/numpy/reference/generated...

网友评论

      本文标题:Hive 行列转换

      本文链接:https://www.haomeiwen.com/subject/byspsftx.html