全部产品
Search
文档中心

实时数仓Hologres:通用聚合函数

更新时间:Apr 29, 2024

Hologres兼容PostgreSQL,支持使用标准的PostgreSQL语法进行开发。

Hologres已支持的通用聚合函数列表如下。当前Hologres版本支持的函数是PostgreSQL的一个子集,函数的使用方法请参见通用聚合函数

函数名

描述

用例

结果

array_agg(anyelement)

将表达式的值串联到数组中。暂不支持JSON、JSONB、TIMETZ、INTERVAL、INET、OID、UUID数据类型和数组类型。

array_agg(c1)

{1,2}
{true,false}
{a,b}
{1.1,2.2}

avg(bigint)

求BIGINT类型表达式中非空值的平均值。

avg(c1)

2.000000

avg(float8)

求FLOAT8类型表达式中非空值的平均值。

avg(c1)

2

avg(float4)

求FLOAT4类型表达式中非空值的平均值。

avg(c1)

2

avg(int)

求INT类型表达式中非空值的平均值。

avg(c1)

2.000000

bit_and(bigint)

对BIGINT类型表达式中的非空值执行按位与运算。

bit_and(c1)

0

bit_and(int)

对INT类型表达式中的非空值执行按位与运算。

bit_and(c1)

0

bit_or(bigint)

对BIGINT类型表达式中的非空值执行按位或运算。

bit_or(c1)

3

bit_or(int)

对INT类型表达式中的非空值执行按位或运算。

bit_or(c1)

3

bool_and(bool)

如果BOOL表达式的值均为TRUE,则函数结果返回TRUE,否则返回FALSE。

bool_and(c1)

f

bool_or(bool)

如果BOOL表达式的值包含TRUE,则函数结果返回TRUE,否则返回FALSE。

bool_or(c1)

t

count(*)

返回指定表的行数。

count(*)

3

count(bigint)

求BIGINT类型表达式的输入行数。

说明

BIGINT类型表达式的值不为NULL。

count(c1)

3

count(numeric)

求NUMERIC类型表达式的输入行数。

说明

NUMERIC类型表达式的值不为NULL。

count(c1)

3

every(bool)

如果BOOL表达式的值均为TRUE,则函数结果返回TRUE,否则返回FALSE。

max(bigint)

求BIGINT类型表达式的最大值。

max(c1)

3

max(float8)

求FLOAT8类型表达式的最大值。

max(c1)

3

max(float4)

求FLOAT4类型表达式的最大值。

max(c1)

3

max(int)

求INT类型表达式的最大值。

max(c1)

3

max(numeric)

求NUMERIC类型表达式的最大值。

max(c1)

3

min(bigint)

求BIGINT类型表达式的最小值。

min(c1)

1

min(float8)

求FLOAT8类型表达式的最小值。

min(c1)

1

min(float4)

求FLOAT4类型表达式的最小值。

min(c1)

1

min(int)

求INT类型表达式的最小值。

min(c1)

1

min(numeric)

求NUMERIC类型表达式的最小值。

min(c1)

1

sum(bigint)

求BIGINT类型表达式所有值的总和。

sum(c1)

6

sum(float8)

求FLOAT8类型表达式所有值的总和。

sum(c1)

6

sum(float4)

求FLOAT4类型表达式所有值的总和。

sum(c1)

6

sum(int)

求INT类型表达式所有值的总和。

sum(c1)

6

sum(numeric)

求NUMERIC类型表达式所有值的总和。

sum(c1)

6.0

string_agg(expression, delimiter)

使用指定分隔符将指定表达式的非空值串联成字符串。

string_agg(c1, '-')

a-b-c

corr(Y, X)

求相关系数。

corr(c1, c2)

covar_pop(Y, X)

求总体协方差。

covar_pop(c1, c2)

covar_samp(Y, X)

求样本协方差。

covar_samp(c1, c2)

regr_avgx(Y, X)

求自变量的平均值。

reg_avgx(c1, c2)

regr_avgy(Y, X)

求因变量的平均值。

reg_avgy(c1, c2)

regr_count(Y, X)

求两个输入参数中都不为空的行数。

regr_count(c1, c2)

regr_intercept(Y, X)

求由(X,Y)确定的最小方差拟合的纵轴截距。

reg_intercept(c1, c2)

regr_r2(Y, X)

求相关系数的平方。

regr_r2(c1, c2)

regr_slope(Y, X)

求由(X,Y)确定的最小方差拟合的斜率。

regr_slope(c1, c2)

regr_sxx(Y, X)

求自变量的平方和sum(X^2) - sum(X)^2/N

regr_sxx(c1, c2)

regr_sxy(Y, X)

求自变量和因变量的乘积和sum(X*Y) - sum(X) * sum(Y)/N

regr_sxy(c1, c2)

regr_syy(Y, X)

求因变量的平方和sum(Y^2) - sum(Y)^2/N

regr_syy(c1, c2)

stddev(int)

求INT类型表达式的样本标准差。

stddev(c1)

stddev(numeric)

求NUMERIC类型表达式的样本标准差。

stddev(c1)

stddev(float8)

求FLOAT8类型表达式的样本标准差。

stddev(c1)

stddev_pop(int)

求INT类型表达式的总体标准差。

stddev_pop(c1)

stddev_pop(numeric)

求NUMERIC类型表达式的总体标准差。

stddev_pop(c1)

stddev_pop(float8)

求FLOAT8类型表达式的总体标准差。

stddev_pop(c1)

stddev_samp(int)

求INT类型表达式的样本标准差。

stddev_samp(c1)

stddev_samp(numeric)

求NUMERIC类型表达式的样本标准差。

stddev_samp(c1)

stddev_samp(float8)

求FLOAT8类型表达式的样本标准差。

stddev_samp(c1)

variance(int)

求INT类型表达式的样本方差。

variance(c1)

variance(numeric)

求NUMERIC类型表达式的样本方差。

variance(c1)

var_pop(float8)

求FLOAT8类型表达式的总体方差。

var_pop(c1)

var_pop(int)

求INT类型表达式的总体方差。

var_pop(c1)

var_pop(numeric)

求NUMERIC类型表达式的总体方差。

var_pop(c1)

var_samp(float8)

求FLOAT8类型表达式的样本方差。

var_samp(c1)

var_samp(int)

求INT类型表达式的样本方差。

var_samp(c1)

var_samp(numeric)

求NUMERIC类型表达式的样本方差。

var_samp(c1)