PIG:按上一个表结果过滤配置单元表

时间:2018-12-11 22:08:08

标签: hadoop hive apache-pig

我需要查询一个HIVE表,并用前一个的一列过滤另一个表。

示例:

A = LOAD 'db.table1' USING org.apache.hive.hcatalog.pig.HCatLoader();

filterA = filter A by (id=='123');

B = LOAD 'db.table2' USING org.apache.hive.hcatalog.pig.HCatLoader();

//the problem is here. filterA has many rows. I need to apply filter for each of the row.

filterB = filter B by (id==filterA.id);
  

A中的数据:

     

tabid id部门

     

1 1是SJ

     

2 4 CS SF

     

3 5 EC MD

     

B中的数据:

     

tabid id名称地址

     

1 4约翰123保存

     

2 5简456 N BLVD

     

3 9尼克789大湖博士

     

预期结果:

     

tabid id名称地址

     

1 4约翰123保存

     

2 5简456 N BLVD

1 个答案:

答案 0 :(得分:0)

如评论中的要求,听起来您正在寻找联接。抱歉,如果我误解了您的问题。

A = LOAD 'db.table1' USING org.apache.hive.hcatalog.pig.HCatLoader();
B = LOAD 'db.table2' USING org.apache.hive.hcatalog.pig.HCatLoader();
C = JOIN A by id, B by id;