我有这样的元组:
(a: (b:int, c:int, d:int, e:int))
我想调用一个udf并传递嵌套元组的范围。这就是我所期望的命令:
FOREACH alias GENERATE myUDF(a.(c .. e));
但这给了我一个错误
ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1200: <line 12, column 133> mismatched input '(' expecting SEMI_COLON
正确的方法是什么?
谢谢!uri
1条答案
按热度按时间esyap4oy1#
你有几个选择。如果您的元组不太长,希望使用
TOTUPLE
内置自定义项并分别列出每个成员:但你可能会问这个问题,因为这将是麻烦你的申请。那样的话你可以从
FLATTEN
对元组进行排序,然后执行范围:我不确定你到底希望传递给udf什么——一个更小的元组?还是原始元组中的元素集合?根据您的自定义项所做的,上述
TOTUPLE
可能是多余的。