Hadoop 你想得到SUM()函数的输出吗?
我有一些数据,如(姓名、分数) A 10 B 25 C 15 A五 A 36 B 98 C 78 C 78 B 12 当我使用SUM()函数时,输出结果如下Hadoop 你想得到SUM()函数的输出吗?,hadoop,mapreduce,apache-pig,Hadoop,Mapreduce,Apache Pig,我有一些数据,如(姓名、分数) A 10 B 25 C 15 A五 A 36 B 98 C 78 C 78 B 12 当我使用SUM()函数时,输出结果如下 {(A)(A)(A), (51)} {(B)(B)(B), (135)} 我想知道是否有什么我可以展示给大家看的 {(A), (51)}, 不是每次出现都重复“名称”字段吗? 任何指导都会有所帮助。按姓名分组 data = LOAD 'demo.txt' as PigStorage (',') using (name : chara
{(A)(A)(A), (51)}
{(B)(B)(B), (135)}
我想知道是否有什么我可以展示给大家看的
{(A), (51)},
不是每次出现都重复“名称”字段吗?任何指导都会有所帮助。按姓名分组
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' 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)
下面是对解决方案的查询
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)
感谢回复,still name字段正在重复,我猜它与FOREACH循环有关。感谢回复,still name字段正在重复,我猜它与FOREACH循环有关。您的load语句不正确。。。。它真的有效吗?你的load语句不正确。。。。它真的有效吗?