Pig Latin BagToString()函数用于将包的元素连接成字符串。在连接时,我们可以在这些值之间放置一个分隔符(可选)。
一般包包都是乱的,可以用ORDER BY操作员。
用法
下面给出的是BagToString()函数。
grunt> BagToString(vals:bag [, delimiter:chararray])
示例
假设我们有一个名为dateofbirth.txt在 HDFS 目录中/pig_data/如下所示。该文件包含 date-of-births。
dateofbirth.txt
22,3,1990 23,11,1989 1,3,1998 2,6,1980 26,9,1989
我们已经将此文件加载到 Pig 中,并使用关系名称dob如下所示。
grunt> dob = LOAD 'hdfs://localhost:9000/pig_data/dateofbirth.txt' USING PigStorage(',')
as (day:int, month:int, year:int);
将包转换为字符串
使用bagtostring()函数,我们可以将包中的数据转换为字符串。让我们分组dob关系。 group 操作将生成一个包含关系的所有元组的包。
将关系分组dob使用Group All运算符,并将结果存储在名为的关系中group_dob如下所示。
grunt> group_dob = Group dob All;
它将产生如下所示的关系。
grunt> Dump group_dob; (all,{(26,9,1989),(2,6,1980),(1,3,1998),(23,11,1989),(22,3,1990)})
在这里,我们可以观察到一个包含所有 date-of-births 作为它的元组的包。现在,让我们使用函数将包转换为字符串BagToString()。
grunt> dob_string = foreach group_dob Generate BagToString(dob);
确认
验证关系dob_string使用DUMP操作符如下图。
grunt> Dump dob_string;
输出
它将产生以下输出,显示关系的内容dob_string。
(26_9_1989_2_6_1980_1_3_1998_23_11_1989_22_3_1990)
相关用法
- Apache Pig BinStorage()用法及代码示例
- Apache Pig HoursBetween()用法及代码示例
- Apache Pig TOKENIZE()用法及代码示例
- Apache Pig SQRT()用法及代码示例
- Apache Pig TAN()用法及代码示例
- Apache Pig TOMAP()用法及代码示例
- Apache Pig TOTUPLE()用法及代码示例
- Apache Pig EqualsIgnoreCase()用法及代码示例
- Apache Pig GetHour()用法及代码示例
- Apache Pig EXP()用法及代码示例
- Apache Pig CurrentTime()用法及代码示例
- Apache Pig UPPER()用法及代码示例
- Apache Pig PluckTuple()用法及代码示例
- Apache Pig UCFIRST()用法及代码示例
- Apache Pig LAST_INDEX_OF()用法及代码示例
- Apache Pig GetMonth()用法及代码示例
- Apache Pig COUNT_STAR()用法及代码示例
- Apache Pig GetWeekYear()用法及代码示例
- Apache Pig DaysBetween()用法及代码示例
- Apache Pig ToDate()用法及代码示例
注:本文由纯净天空筛选整理自 Apache Pig - BagToString()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。