Pig Latin 像这样获取 SUM() 函数的输出?
Pig Latin to get output for SUM() function like this?
我有一些数据,比如(名字,分数)
一个 10
乙 25
C 15
一个 5
一个 36
乙98
C 78
C 78
B 12
data = LOAD 'demo.txt' using PigStorage (',') as (name : chararray , score : int);
groupScore = GROUP data by score;
totalscore = FOREACH groupScore Generate data.name , SUM(data.score);
当我使用 SUM() 函数时,输出类似于
{(A)(A)(A), (51)}
{(B)(B)(B), (135)}
我想知道有没有我可以展示的东西
{(A), (51)},
这不是在每次出现时都重复 "name" 字段吗?
任何指导都会有所帮助。
按名称分组
data = LOAD 'demo.txt' as PigStorage (',') using (name : chararray , score : int);
groupScore = GROUP data by name;
totalscore = FOREACH groupScore Generate data.name , SUM(data.score);
下面是解决方案的查询
data = LOAD 'demo.txt' USING PigStorage(',') AS (name:chararray,score:int);
groupScore = group data by name;
result= FOREACH groupScore GENERATE group,SUM(data.score);
输出
(A,51) (B,135) (C,171)
我有一些数据,比如(名字,分数) 一个 10 乙 25 C 15 一个 5 一个 36 乙98 C 78 C 78 B 12
data = LOAD 'demo.txt' using PigStorage (',') as (name : chararray , score : int);
groupScore = GROUP data by score;
totalscore = FOREACH groupScore Generate data.name , SUM(data.score);
当我使用 SUM() 函数时,输出类似于
{(A)(A)(A), (51)}
{(B)(B)(B), (135)}
我想知道有没有我可以展示的东西
{(A), (51)},
这不是在每次出现时都重复 "name" 字段吗?
任何指导都会有所帮助。
按名称分组
data = LOAD 'demo.txt' as PigStorage (',') using (name : chararray , score : int);
groupScore = GROUP data by name;
totalscore = FOREACH groupScore Generate data.name , SUM(data.score);
下面是解决方案的查询
data = LOAD 'demo.txt' USING PigStorage(',') AS (name:chararray,score:int);
groupScore = group data by name;
result= FOREACH groupScore GENERATE group,SUM(data.score);
输出
(A,51) (B,135) (C,171)