grunt> table1 = LOAD 'table1_input_path' USING PigStorage(',') as (id:int, value:int);
grunt> table2= LOAD 'table2_input_path' USING PigStorage(',') as (id:int, color:chararray);
grunt> joinlevel = JOIN table1 BY id, table2 BY id;
grunt> final = FOREACH joinlevel generate table1::id as id, table1::color as color, table2::value as value;
grunt> dump final;
2条答案
按热度按时间hvvq6cgz1#
如果你这样做了
DESCRIBE final;
您将看到模式如下所示:要区分这两个id列,可以使用
table1::id
或者table2::id
. 因此,要删除其中一个重复列,可以执行以下操作:(我还重新命名了字段以除去
table1::
以及table2::
前缀,因为它们不再是必需的。)我也可以这样做:
这不会给我一个错误,因为
value
以及color
都是明确的名字。lstz6jyr2#
执行最后的Pig脚本: