Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Join 左联接中缺少字段的默认值?_Join_Apache Pig - Fatal编程技术网

Join 左联接中缺少字段的默认值?

Join 左联接中缺少字段的默认值?,join,apache-pig,Join,Apache Pig,在Pig中,当我进行左连接时,一行没有行,值为NULL: c = join a by ($0) left, b by ($0); 如果 然后 我希望使用默认值(例如,-1)而不是NULL,以便 c=((1,10,30),(2,20,-1)) 我该怎么做 如果这是不可能的,我如何将c的第3列更改为默认值,而不是NULL?我不知道是否可以在join语句中执行此操作,但您添加了另一个语句: d = FOREACH c GENERATE $0, $1, (($2 IS NULL) ? -1 : $2

在Pig中,当我进行左连接时,一行没有行,值为
NULL

c = join a by ($0) left, b by ($0);
如果

然后

我希望使用默认值(例如,
-1
)而不是
NULL
,以便

c=((1,10,30),(2,20,-1))
我该怎么做


如果这是不可能的,我如何将
c
的第3列更改为默认值,而不是
NULL

我不知道是否可以在join语句中执行此操作,但您添加了另一个语句:

d = FOREACH c GENERATE $0, $1, (($2 IS NULL) ? -1 : $2);

我想它不会触发额外的MR作业。

必须引用“-1”吗?如果将其视为整数,则不,抱歉。我已经更新了答案。
c=((1,10,30),(2,20,-1))
d = FOREACH c GENERATE $0, $1, (($2 IS NULL) ? -1 : $2);