假设我要根据同一字段中的值选择数据的子集。现在我必须做这样的事情

TestLocationsResults = FILTER SalesData by (StoreId =='17'
or StoreId =='85'
or StoreId =='12'
or StoreId =='45'
or StoreId =='26'
or StoreId =='75'
or StoreId =='13'
)

在SQL中,我们可以简单地做到这一点:
SELECT * FROM SalesData where StoreID IN (17, 12, 85, 45, 26, 75, 13)

我缺少在Pig中的类似快捷方式吗?

最佳答案

Pig中没有IN关键字可以执行这种集合成员资格检测。

一个建议是否编写UDF(如this question / answer所示)。

另一种可能是使用要过滤的每个StoreId的值创建一个关系,然后对这两个关系执行内部联接。

10-07 18:44