关于hive的行转列、列转行的用法

hive 行专列

CONCAT() :返回输入字符串连接后的结果,支持任意个输入字符串;

CONCAT_WS(_, A, B,…):它是一个特殊形式的 CONCAT()。第一个参数剩余参数间的分隔符。分隔符可以是与剩余参数一样的字符串。如果分隔符是 NULL,返回值也将为 NULL。这个函数会跳过分隔符参数后的任何 NULL 和空字符串。分隔符将被加到被连接的字符串之间;

列转行

EXPLODE(col):将hive一列中复杂的array或者map结构拆分成多行
LATERAL VIEW:LATERAL VIEW udtf(expression) tableAlias AS columnAlias,用于和split, explode等UDTF一起使用,它能够将一列数据拆成多行数据,在此基础上可以对拆分后的数据进行聚合。

select
movie,
category_name
from
movie_info lateral view explode(category) table_tmp as category_name;

上一篇:vue四十五:Vue美团项目之商家详情-商品分类滚动完成


下一篇:《Oracle MySQL编程自学与面试指南》11-01:联合查询