SUM()函数
编辑教程SUM()函数
可以使用pig Latin的SUM() 函数获取单列包中列的总计值。在计算总和时,SUM() 函数会忽略NULL值。
注意
要获得全局总和,我们需要执行Group All操作,并使用SUM()函数计算总和值。
要获取组的总和,我们需要使用Group by运算符进行进行分组,然后继续SUM()函数。
语法
下面定义了SUM() 函数的语法。
grunt> SUM(expression)
例
假设在HDFS目录/ pig_data /中有一个名为employee.txt的文件,如下所示。
employee.txt
1,John,2007-01-24,250
2,Ram,2007-05-27,220
3,Jack,2007-05-06,170
3,Jack,2007-04-06,100
4,Jill,2007-04-06,220
5,Zara,2007-06-06,300
5,Zara,2007-02-06,350
通过关系 employee_data 的插入文件加载到Pig中,如下所示。
grunt> employee_data = LOAD 'hdfs://localhost:9000/pig_data/ employee.txt' USING PigStorage(',')
as (id:int, name:chararray, workdate:chararray, daily_typing_pages:int);
计算所有GPA的总和
我们让尝试计算每天输入侧的所有员工的总页数来_ECSHOP演示 SUM() 函数。可以使用Apache的pig的内置函数SUM() (区分大小写)来计算数值的总和。让我们使用组中的所有运算符将关系employee_data分组,将结果存储在称为employee_group的关系中,如下所示。
grunt> employee_group = Group employee_data all;
将会产生如下所示的关系。
grunt> Dump employee_group;
(all,{(5,Zara,2007-02-06,350),
(5,Zara,2007-06-06,300),
(4,Jill,2007-0406,220),
(3,Jack,2007-04-06,100),
(3,Jack,2007-05-06,170),
(2,Ram,2007-0527,220),
(1,John,2007-01-24,250)})
现在让我们计算每天输入的页面的总和。
grunt> student_workpages_sum = foreach employee_group Generate
(employee_data.name,employee_data.daily_typing_pages),SUM(employee_data.daily_typing_pages);
验证
使用DUMP运算符验证关系student_workpages_sum,如下所示。
grunt> Dump student_workpages_sum;
输出
基本上产生以下输出,显示关系student_workpages_sum的内容如下。
(({ (Zara), (Zara), (Jill) ,(Jack) , (Jack) , (Ram) , (John) },
{ (350) , (300) , (220) ,(100) , (170) , (220) , (250) }),1610)
Mos固件,小电视必刷固件
ES6 教程
Vue.js 教程
JSON 教程
jQuery 教程
HTML 教程
HTML 5 教程
CSS 教程
CSS3 教程
JavaScript 教程
DHTML 教程
JSON在线格式化工具
JS在线运行
JSON解析格式化
jsfiddle中国国内版本
JS代码在线运行
PHP代码在线运行
Java代码在线运行
C语言代码在线运行
C++代码在线运行
Python代码在线运行
Go语言代码在线运行
C#代码在线运行
JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。
大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
选择支付方式:
立即支付
¥
9.99
无法付款,请点击这里
金额: 0 元
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟