PigLatin 中的 JOIN 用法
JOIN usages in PigLatin
我想加入两个 tables/alias,假设:
Table A (People_ID, People_Name)
Table B (Location, People_ID)
以下是我的猪拉丁文输入:
join_table = JOIN A BY People_ID, B BY People_ID
但是当我输入:
describe join_table;
显示:
join_table:{A::people_id:int,A::people_name:chararray,B::people_id:int,B::location:chararray}
这正常吗?我以为结果应该是这样的:
join_table:{A::people_id:int,A::people_name:chararray,B::location:chararray}
是的,输出是正常的,对于你想要的输出,你必须在另一个关系中生成你的 JOINED 关系。
试试这个:
join_table = JOIN A BY People_ID, B BY People_ID
generate_joined_table = FOREACH join_table GENERATE
A::people_id AS people_id,A::people_name AS people_name,B::location AS location;
DESCRIBE generate_joined_table;
我想加入两个 tables/alias,假设:
Table A (People_ID, People_Name)
Table B (Location, People_ID)
以下是我的猪拉丁文输入:
join_table = JOIN A BY People_ID, B BY People_ID
但是当我输入:
describe join_table;
显示:
join_table:{A::people_id:int,A::people_name:chararray,B::people_id:int,B::location:chararray}
这正常吗?我以为结果应该是这样的:
join_table:{A::people_id:int,A::people_name:chararray,B::location:chararray}
是的,输出是正常的,对于你想要的输出,你必须在另一个关系中生成你的 JOINED 关系。
试试这个:
join_table = JOIN A BY People_ID, B BY People_ID
generate_joined_table = FOREACH join_table GENERATE
A::people_id AS people_id,A::people_name AS people_name,B::location AS location;
DESCRIBE generate_joined_table;