我在我的Pig剧本里有一个奇怪的两难处境。我正在连接多个表,最后一个连接如下:
a = JOIN O_1 by ((long)OpropID, (long)OAID) LEFT, property by ((long)GPropID, (long)prop_AID);
如果我按特定的数据点过滤结果,我将从 property
表(联接中的右表)。即使没有过滤器,结果集是正确的,我只是过滤它来测试结果。
b = filter a by OpropID==12 and OAID==10;
dump b;
但是,如果创建后续 GENERATE
语句之后,相同的字段(下例中的最后两个)立即返回 NULL
结果:
c = FOREACH a GENERATE gID, p_AID, OpropID, OAID, GPropID, prop_AID;
我试过用 $16
, $17
而不是字段名;我也用过 property::GPropID
或者 property::prop_AID
无济于事。
在这一点上任何帮助都将不胜感激。
暂无答案!
目前还没有任何答案,快来回答吧!