如何根据pig中列的不同值拆分关系

Posted

技术标签:

【中文标题】如何根据pig中列的不同值拆分关系【英文标题】:How to split the relation acording to diffrent values of a column in pig 【发布时间】:2016-08-26 19:28:04 【问题描述】:

如果假设我有员工关系,其架构类似于姓名、年龄、位置、薪水、部门..现在我想根据列的不同值拆分此关系。

就像在纽约工作的所有员工都将处于一种关系中一样,在伦敦工作的所有员工都将处于一种关系中,依此类推..

【问题讨论】:

【参考方案1】:

使用SPLIT。假设您的文件是Employee.txt 并且字段是制表符分隔的。

A = LOAD 'Employee.txt' USING PigStorage('\t') AS (name:chararray, age:int, location:chararray, salary:double, department:chararray);
SPLIT A INTO X IF location == 'New York', Y IF location == 'London';
DUMP X;
DUMP Y;

【讨论】:

谢谢你的回复..但我之前有这个想法..但问题是位置列中有很多不同的值..坐下来会是一个很长的过程并拆分关系..没有其他办法吗?

以上是关于如何根据pig中列的不同值拆分关系的主要内容,如果未能解决你的问题,请参考以下文章

如何将一个表中列的每个不同值映射到 Hive 中另一个表中列的每个不同值

如何遍历大型 Pyspark Dataframe 中列的不同值? .distinct().collect() 引发大任务警告

postgresql中列的不同值

如何将sqlalchemy中列的默认值设置为关系中列的值?

如何根据oracle plsql中列中的逗号分隔值拆分选择查询行

SQLite如何对`GridView`中列的值求和