piglating多个列

eqzww0vc  于 2021-06-21  发布在  Pig
关注(0)|答案(2)|浏览(175)

对不起,伙计们,我几天前才开始用Pig。我不知道如何解决这个问题。任何帮助都将不胜感激。
有没有办法使这段代码独立于列数?因为我想把它放在一列,但每个细胞作为一个单一的细胞。

C= FOREACH A GENERATE FLATTEN ($1);
    D= FOREACH A GENERATE FLATTEN ($2);
    E= FOREACH A GENERATE FLATTEN ($3);
    F= FOREACH A GENERATE FLATTEN ($4);
    G= FOREACH A GENERATE FLATTEN ($5);

X= UNION C,D,E,F,G;

DESCRIBE X;
DUMP X;

为乔干杯

cgvd09ve

cgvd09ve1#

我认为没有办法解决这个问题,而不是像上面提到的那样在pig中使用foreach。在 UDF also you need to store each column value in separate variables .

5f0d552i

5f0d552i2#

你可以试试

FOREACH A
GENERATE FLATTEN(TOBAG($1, $2, $3, $4, $5));

FOREACH A
GENERATE FLATTEN(TOBAG(*));

相关问题