猪 - 过滤器和功能不起作用

时间:2015-07-29 09:14:15

标签: apache-pig

这有效:filter A by daily_partition == '20150228'

这不起作用:filter A by daily_partition == '20150228' AND daily_partition == '20150227';

知道为什么“AND”没有在过滤器中应用?

2 个答案:

答案 0 :(得分:2)

顾名思义,当全部条件为真时,AND的计算结果为真。同时,当至少其中一个条件为真时,OR会求值为true。

AND and OR operators

如果daily_partition等于20150228,则它也不可能等于20150227

  

知道为什么“AND”没有在过滤器中应用?

AND 正在您的过滤器中应用,这就是您没有获得任何值的原因。正如您所说,FILTER所需要的是OR。您希望获得等于20150227 20150228的日期。

您可能希望详细了解Boolean albebra

答案 1 :(得分:0)

这是通过使用“OR”函数而不是“AND”来实现的。 我认为问题出现了,因为filter接受了布尔输入。 对此问题的任何进一步解释都将是有用的。 感谢