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

pig - filter on AND function not working

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

这行不通:filter A by daily_partition == '20150228' AND daily_partition == '20150227';

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

这是通过使用 "OR" 函数而不是 "AND" 来实现的。 我认为问题的发生是因为过滤器接受了布尔输入。 对此问题的任何进一步解释都会很有用。 谢谢

顾名思义,当所有条件为真时,AND求值为真。同时,当 至少 一个条件为真时,OR 的计算结果为真。

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

Any idea why "AND" is not being applied in filter?

AND 被应用到您的过滤器中,这就是您没有获得任何值的原因。正如您所说,您的 FILTER 需要的是 OR。您想要获得等于 20150227 OR 20150228.

的日期

您可能想阅读更多关于 Boolean albebra 的内容。