Hologres兼容PostgreSQL,支持使用标准的PostgreSQL语法进行开发。
Hologres已支持的通用聚合函数列表如下。当前Hologres版本支持的函数是PostgreSQL的一个子集,函数的使用方法请参见通用聚合函数。
函数名 | 描述 | 用例 | 结果 |
---|---|---|---|
array_agg(anyelement) | 将表达式的值串联到数组中。暂不支持JSON、JSONB、TIMETZ、INTERVAL、INET、OID、UUID数据类型和数组类型。 | array_agg(c1) |
|
avg(bigint) | 求BIGINT类型表达式中非空值的平均值。 | avg(c1) | 2.000000 |
avg(float8) | 求FLOAT8类型表达式中非空值的平均值。 | avg(c1) | 2.000000 |
avg(float4) | 求FLOAT4类型表达式中非空值的平均值。 | avg(c1) | 2.000000 |
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.0 |
max(float4) | 求FLOAT4类型表达式的最大值。 | max(c1) | 3.0 |
max(int) | 求INT类型表达式的最大值。 | max(c1) | 3 |
max(numeric) | 求NUMERIC类型表达式的最大值。 | max(c1) | 3.0 |
min(bigint) | 求BIGINT类型表达式的最小值。 | min(c1) | 1 |
min(float8) | 求FLOAT8类型表达式的最小值。 | min(c1) | 1.0 |
min(float4) | 求FLOAT4类型表达式的最小值。 | min(c1) | 1.0 |
min(int) | 求INT类型表达式的最小值。 | min(c1) | 1 |
min(numeric) | 求NUMERIC类型表达式的最小值。 | min(c1) | 1.0 |
sum(bigint) | 求BIGINT类型表达式所有值的总和。 | sum(c1) | 6 |
sum(float8) | 求FLOAT8类型表达式所有值的总和。 | sum(c1) | 6.0 |
sum(float4) | 求FLOAT4类型表达式所有值的总和。 | sum(c1) | 6.0 |
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) | 无 |