0
我想将下面的连接语句转换成PIG。内部和外部连接在猪的3张桌子
from EXCH e
JOIN (select a,p, count(buyer) from EXCH group by a, p) sq on e.a = sq.a and e.p = sq.p
left outer join myimplocal i on e.a = i.a and e.p = i.p and e.f = i.f and i.imp > 0 and e.iswin = 1
目前,我有这样的:
EXCH2 = FOREACH EXCH GENERATE a, p, buyer;
EXCH2_groupby = GROUP EXCH2 BY (a, p);
EXCH_alias_sq = FOREACH EXCH2_groupby GENERATE EXCH2.a, EXCH2.p, COUNT(EXCH2.buyer);
join_EXCH_and_EXCH_alias_sq = JOIN EXCH by (a, p), EXCH_alias_sq by (a, p);
myimplocal_filterby_imp_notZero = FILTER myimplocal BY imp > 0;
我应该做左外连接之前过滤e.iswin=1
?我是否应该将过滤器应用到join_EXCH_and_EXCH_alias_sq
,然后在myimplocal_filterby_imp_notZero
和我的过滤器别名上进行外部连接?
任何帮助将不胜感激。
请尝试提出答案并显示卡住的位置。 –