我们知道在spark sql中最主要的就是编写sql语句来处理数据,在使用mysql的时候,我们可以看到有很多内置函数,在spark中也同样可以兼容sql03标准的sql,所以这里也有很多的内置函数,本篇我们主要介绍spark sql中内置的标量函数。
标量函数主要是是指每一组返回单个的值,顾名思义就是输入一组数据,输出一个值。那么在spark sql中有哪些聚合函数呢?
一、聚合函数
序号 | 函数 | 说明 |
1 | count(col) | 返回每组中成员数量 |
2 | countDistinct(col) | 返回每组中成员唯一数量 |
3 | approx_count_distinct(col) | 返回每组中成员唯一近似数量 |
4 | min(col) | 返回每组中给定列的最小值 |
5 | max(col) | 返回每组中给定列的最大值 |
6 | sum(col) | 返回每组中给定列的值的和 |
7 | sumDistinct(col) | 返回每组中给定列的唯一值的和 |
8 | avg(col) | 返回每组中给定列的值的平均 |
9 | skewness(col) | 返回每组中给定列的值的分布的偏斜度 |
10 | kurtosis(col) | 返回每组中给定列的值的分布的峰度 |
11 | variance(col) | 返回每组中给定列的值的无偏方差 |
12 | stddev(col) | 返回每组中给定列的值的标准差 |
13 | collect_list(col) | 返回每组中给定列的值的集合。返回的集合可能包含重复的值。 |
14 | collect_set(col) | 返回每组中给定列的唯一值的集合 |
二、分组函数
序号 | 函数 | 说明 |
1 | groupby | 分组函数 |
2 | agg | 聚合分组函数,配合count、min、max、avg等使用 |
还没有评论,来说两句吧...