聚合函数
聚集函数是从一组输入值计算一个结果。例如使用COUNT函数计算SQL查询语句返回的记录行数。聚合函数如表1所示。
函数 |
返回值类型 |
描述 |
---|---|---|
count(*), count(expr), count(DISTINCT expr[, expr...]) |
BIGINT |
返回记录条数。 |
sum(col), sum(DISTINCT col) |
DOUBLE |
求和。 |
avg(col), avg(DISTINCT col) |
DOUBLE |
求平均值。 |
min(col) |
DOUBLE |
返回最小值。 |
max(col) |
DOUBLE |
返回最大值。 |
variance(col), var_pop(col) |
DOUBLE |
返回列的方差。 |
var_samp(col) |
DOUBLE |
返回指定列的样本方差。 |
stddev_pop(col) |
DOUBLE |
返回指定列的偏差。 |
stddev_samp(col) |
DOUBLE |
返回指定列的样本偏差。 |
covar_pop(col1, col2) |
DOUBLE |
返回两列数值协方差。 |
covar_samp(col1, col2) |
DOUBLE |
返回两列数值样本协方差。 |
corr(col1, col2) |
DOUBLE |
返回两列数值的相关系数。 |
percentile(BIGINT col, p) |
DOUBLE |
返回数值区域的百分比数值点。0<=P<=1,否则返回NULL,不支持浮点型数值。 |
percentile_approx(DOUBLE col, p [, B]) |
DOUBLE |
返回组内数字列近似的第p位百分数(包括浮点数),p值在[0,1]之间。参数B控制近似的精确度,B值越大,近似度越高,默认值为10000。当列中非重复值的数量小于B时,返回精确的百分数。 |
函数如var_pop,stddev_pop,var_samp,stddev_samp,covar_pop,covar_samp,corr,percentile_approx,不支持非数值数据类型,如TimeStamp。