在Pig中,当我离开连接并且一行没有行时,值为NULL
:
c = join a by ($0) left, b by ($0);
如果
a=((1,10),(2,20))
b=((1,30))
然后
c=((1,10,30),(2,20,NULL))
我想使用默认值(比如-1
)而不是NULL
,以便
c=((1,10,30),(2,20,-1))
我该怎么做?
如果这是不可能的,如何将c
的第3列更改为默认值而不是NULL
?
答案 0 :(得分:5)
我不知道是否可以在join语句中完成,但是你添加了另一个语句:
d = FOREACH c GENERATE $0, $1, (($2 IS NULL) ? -1 : $2);
我想它不会触发额外的MR工作。