Hadoop / Hive - 将单行拆分为多行

时间:2012-08-28 13:27:30

标签: hadoop split hive

我正在尝试找到一种方法,根据分隔列将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找到了一些道路标志,但是我没有足够的细节指出我的解决方案,我不知道如何将转换功能设置为返回一个会分割行的对象。

2 个答案:

答案 0 :(得分:15)

尝试这个措辞

SELECT ID1, Sub
FROM tableName lateral view explode(split(Subs,',')) Subs AS Sub  

答案 1 :(得分:0)

SELECT ID1, new_Subs_clmn
FROM tableName lateral view explode(split(Subs,',')) Subs AS new_Sub_clmn;

最初,我对所使用的名称感到困惑,并在共享上面的查询时认为这会有所帮助。