【问题标题】:NOT IN , MATCHES in pigNOT IN , MATCHES 猪
【发布时间】:2017-02-09 08:18:55
【问题描述】:

我在猪中有两个关系:

A,B

DUMP A;

桑迪普·罗汉·莫汉

DUMP B;

莫汉

我需要得到 A - B 的输出; 关系C应该给我

桑迪普,罗汉

因为它们不存在于 B

【问题讨论】:

    标签: hadoop apache-pig


    【解决方案1】:

    试试这个:

    A1 = LOAD 'Sandeep Rohan Mohan' USING PigStorage() AS (line:chararray);
    B1 = LOAD 'MOHAN' USING PigStorage() AS (line:chararray);
    
    A = FOREACH A1 GENERATE UPPER(line) AS line;
    B = FOREACH B1 GENERATE UPPER(line) AS line;
    
    C = COGROUP A BY line, B BY line;
    
    D = FILTER C BY IsEmpty(B);
    
    E = FOREACH D GENERATE group AS name;
    
    DUMP E;
    

    (罗汉)(桑迪普)

    也可以参考sets operations in apache pig

    【讨论】:

      【解决方案2】:

      通过左外连接实现它,只考虑那些在 $1 中有空值的元组

      【讨论】:

        猜你喜欢
        • 2011-03-22
        • 2017-10-22
        • 1970-01-01
        • 2011-03-29
        • 1970-01-01
        • 1970-01-01
        • 2011-03-04
        • 2017-12-01
        相关资源
        最近更新 更多