我在整个表上应用聚合函数:
G = group A by all;
M = foreach G generate MAX(my_column);
这当然会返回整个 A 关系(表)中 my_column 的最大值。
但是,当 A 为空时,结果 M 也为空。有人能想到一个技巧,在这种情况下我如何强制 M 包含一个常数值 0?
(注意:这个问题可能与如何在 pig 中创建一个小的常量关系(表)有关?但可能每个人都有一个单独的答案)
谢谢,伊多
我在整个表上应用聚合函数:
G = group A by all;
M = foreach G generate MAX(my_column);
这当然会返回整个 A 关系(表)中 my_column 的最大值。
但是,当 A 为空时,结果 M 也为空。有人能想到一个技巧,在这种情况下我如何强制 M 包含一个常数值 0?
(注意:这个问题可能与如何在 pig 中创建一个小的常量关系(表)有关?但可能每个人都有一个单独的答案)
谢谢,伊多
使用三元运算符和IsEmpty:
M = foreach G generate (IsEmpty(A) ? 0 : MAX(my_column));