pig拉丁语不需要公共数据

92dk7w1h  于 2021-06-24  发布在  Pig
关注(0)|答案(1)|浏览(220)

数据1

1,a
2,b
3,c
4,d
5,e

数据2

1,a
2,g
3,j
4,b
5,c
6,d
7,e

脚本

a =  load '/tmp/data/data1' using PigStorage(',') as (timestamp:chararray,constant:chararray);
b =  load '/tmp/data/data2' using PigStorage(',') as (timestamp:chararray,constant:chararray);

我只需要输出一些常量,这些常量不常见,出现在data2中,如下所示

2,g
3,j

谢谢你的帮助。

zfycwa2u

zfycwa2u1#

RIGHT OUTER JOIN 以及 FILTER 其中a.timestamp为null。这将为您提供b中不在a中的所有记录。

c = JOIN a BY (timestamp) RIGHT OUTER,b BY (timestamp);
d = FILTER c BY (a::timestamp is null);
DUMP d;

相关问题