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()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。