Apache pig PIGLatin展平多个列

Apache pig PIGLatin展平多个列,apache-pig,Apache 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);

对不起,伙计们,我几天前才开始用猪。我不知道如何解决这个问题。任何帮助都将不胜感激

有没有办法使此代码独立于列数?因为我试着把它全部放在一列中,但每个单元格都是一个单元格

    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;

干杯乔

我认为没有办法解决这个问题,而不是像你提到的那样在Pig中使用Foreach。 在
UDF中,您还需要将每个列值存储在单独的变量中

您可以尝试

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


FOREACH A
GENERATE FLATTEN(TOBAG(*));

你是什么意思?你想合并所有列。每列都是一个包吗?我在每列中都有字符串。我只想把它们都放在一起。因此,在这种情况下,行数应该增加5。目的是使查询独立于行数。另一个问题是,如果可能的话,用它做一个好的旁观者?