8

我正在尝试找到一种方法,根据分隔列将 Hive 中的一行拆分为多行。例如获取结果集:

ID1  Subs
1     1, 2
2     2, 3

并返回:

ID1  Subs
1     1
1     2
2     2
2     3

我在http://osdir.com/ml/hive-user-hadoop-apache/2009-09/msg00092.html找到了一些路标,但是我没有足够的细节来指出我的方向解决方案,而且我不知道如何设置转换函数以返回将拆分行的对象。

4

2 回答 2

22

试试这个措辞

SELECT ID1, Sub
FROM tableName lateral view explode(split(Subs,',')) Subs AS Sub  
于 2016-04-22T06:52:08.323 回答
0
SELECT ID1, new_Subs_clmn
FROM tableName lateral view explode(split(Subs,',')) Subs AS new_Sub_clmn;

我最初对使用的名称感到困惑,分享上面的查询认为它会有所帮助。

于 2019-06-21T22:16:17.987 回答