Apache Pig条件foreach生成

哈维尔·卡贝罗

我试图实现一个有条件的foreach生成,其中列数据之一根据输入数据而变化。

例如说我在别名A中有此数据:

dump A;
(George, Films)
(Martin, Books)

如果名称以G开头,我想存储一个Y。从文档中我知道有条件算术运算,但是我找不到执行“以X开头”的方法。我认为应该是这样的,其中#####是缺少的条件。

B = FOREACH A GENERATE (##### ? "Y":"N");
兰·洛卡尔

您正在寻找SUBSTRING函数。像这样使用它:

b = foreach a generate $0.., (SUBSTRING($0,0,1)=='G'?'y':'n');

在这里了解更多

https://pig.apache.org/docs/r0.9.1/func.html#substring

它会给你

(George,Films,y)
(Martin,Books,n)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章