首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用附加列的单元UDTF

使用附加列的单元UDTF
EN

Stack Overflow用户
提问于 2013-11-12 03:18:14
回答 1查看 657关注 0票数 2

我想这个问题的答案是“不”,但无论如何。

我有一张有钥匙和数组的桌子。典型的行看起来可能如下:

代码语言:javascript
复制
98c28560-4b48-11e3-9c12-07373d47725c segment-a,segment-b,segment-c

我希望这一行产生三行:

代码语言:javascript
复制
98c28560-4b48-11e3-9c12-07373d47725c segment-a
98c28560-4b48-11e3-9c12-07373d47725c segment-b
98c28560-4b48-11e3-9c12-07373d47725c segment-c

使用最新版本的Hive中可用的标准UDF。

有办法这样做吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-12 13:36:45

您可以将侧视分解结合起来。

例如:

给出包含guid (string)和segs (数组)列的表测试

代码语言:javascript
复制
select * from test
99999999-4b48-11e3-9c12-07373d47725c    ["segment-a1","segment-b1","segment-c1"]
98c28560-4b48-11e3-9c12-07373d47725c    ["segment-a2","segment-b2","segment-c2"]

select guid, seg from test lateral view explode(segs) x as seg;

99999999-4b48-11e3-9c12-07373d47725c    segment-a1
99999999-4b48-11e3-9c12-07373d47725c    segment-b1
99999999-4b48-11e3-9c12-07373d47725c    segment-c1
98c28560-4b48-11e3-9c12-07373d47725c    segment-a2
98c28560-4b48-11e3-9c12-07373d47725c    segment-b2
98c28560-4b48-11e3-9c12-07373d47725c    segment-c2

注意:

蜂巢0.12

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19920245

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档