过滤Apache Pig中的数据

时间:2017-06-13 22:52:42

标签: apache-pig

嘿我正在尝试过滤以下输入:

public void resetseek(){
    if(seekbar.getProgress() > 0)
    {
        seekbar.setProgress(0);
    }
}

应减少预期的输出关系,并且仅包括Id Num 102369 100 623589 200 102369 300 103333 300 103333 100 ... ID之间现有关系的所有Num - Id关系:

Num == 300

我试过这样的话:

Id     Num
102369 100
102369 300
103333 300
103333 100

但这不起作用。你能帮我解决这个问题吗?

亲切的问候。

1 个答案:

答案 0 :(得分:0)

您应该获取Num == 300的记录的ID,然后将其用作过滤器。

假设所有num == 300导致1个唯一值102369

A = FILTER table BY (Num == 300);
B = LIMIT A 1; --This is to ensure you use only 1 value
C = FILTER table by B.$0;
DUMP C;

如果num == 300

有多个ID,则使用JOIN
 A = FILTER table BY (Num == 300);
 B = JOIN table by Id,A BY A.$0;
 C = FOREACH B GENERATE B.$0,B.$1;
 DUMP C;