Join 根据条件在apache pig中连接两个别名

Join 根据条件在apache pig中连接两个别名,join,apache-pig,Join,Apache Pig,我想加入两个别名/关系 say A has keys : a,b,c and B has keys : x,y,z 因此,它应该是: C=通过A连接A(如果B.x与“foo.*”匹配,则选择y或z) 正如上面的逻辑。我该怎么做呢?我的答案: 只需根据条件生成一个键,然后通过该键加入即可 例如 BB = foreach B generate x,y,z,(x matches "foo.*") ? y : z as matchkey; C = join A by a, BB by matchkey

我想加入两个别名/关系

say A has keys : a,b,c
and B has keys : x,y,z
因此,它应该是:

C=通过A连接A(如果B.x与“foo.*”匹配,则选择y或z)

正如上面的逻辑。我该怎么做呢?

我的答案:

只需根据条件生成一个键,然后通过该键加入即可

例如

BB = foreach B generate x,y,z,(x matches "foo.*") ? y : z as matchkey;
C = join A by a, BB by matchkey;
dump c;