一、行转列的使用
1、问题
hive如何将
a b 1
a b 2
a b 3
c d 4
c d 5
c d 6
变为:
a b 1,2,3
c d 4,5,6
2、数据
test.txt
a b 1
a b 2
a b 3
c d 4
c d 5
c d 6
3、答案
1.建表
drop table tmp_jiangzl_test;
create table tmp_jiangzl_test
(
col1 string,
col2 string,
col3 string
)
row format delimited fields terminated by '\t'
stored as textfile;
load data local inpath '/home/jiangzl/shell/test.txt' into table tmp_jiangzl_test;
2.处理
select col1,col2,concat_ws(',',collect_set(col3))
from tmp_jiangzl_test
group by col1,col2;
二、列转行
1、问题
hive如何将
a b 1,2,3
c d 4,5,6
变为:
a b 1
a b 2
a b 3
c d 4
c d 5
c d 6
2、答案
1.建表
drop table tmp_jiangzl_test;
create table tmp_jiangzl_test
(
col1 string,
col2 string,
col3 string
)
row format delimited fields terminated by '\t'
stored as textfile;
处理:
select col1, col2, col5
from tmp_jiangzl_test a
lateral view explode(split(col3,',')) b AS col5
本文行转列的例子引自:http://my.oschina.net/repine/blog/295961
相关推荐
本文将详细讲解如何在pandas中进行列转行的操作,类似于Hive中的explode方法,这对于处理包含列表或者数组的数据尤为有用。 首先,我们来看一个简单的例子。假设有一个DataFrame `df`,其中包含两列:`A` 和 `B`,`...
hive列转行 1.函数说明 EXPLODE(col):将 hive 一列中复杂的 array 或者 map 结构拆分成多行。 LATERAL VIEW : 用法:LATERAL VIEW udtf(expression) tableAlias AS columnAlias 解释:用于和 split, explode 等 ...
内部表和外部表,导入数据,导出数据,将数据从hive的表中导出到本地磁盘目录中,HIVE的存储文件格式,修改表的分区,多重插入,HIVE的自定义函数功能,使用explode —— 行转列,配合lateral view 列转行方便统计,...
理解HBase的列族、表、行键和时间戳的概念,以及如何使用Java API进行数据操作,是大数据开发者的必备技能。 此外,了解YARN(Hadoop的资源调度器)和Kafka(分布式流处理平台)也是必要的。YARN管理集群资源,确保...
7.1 练习一: 行转列(难度:中等)) 7.2 练习二: 列转行(难度:中等) 7.3 练习三: 带货主播谁(难度:中等) 7.4 练习四: MySQL 中如何查看sql语句的执行计划?可以看到哪些信息?(难度:中等) 7.5 练习五...
在SQL领域,转换数据结构是常见的操作,包括行转列和列转行。这里我们将讨论如何使用SQL实现这些转换,并解决连续登录天数的计算问题,以及探讨数据倾斜和LEFT JOIN的理解。 首先,我们来看行转列的例子。给定的...
行转列与列转行的实现** - 使用CASE WHEN语句配合GROUP BY实现行转列。 - 使用UNION ALL或子查询实现列转行。 **7. 大表全局排序的方法** - 使用采样排序。 - 先局部排序再合并排序结果。 #### 开放题 **1. ...