SQL聚合函数
SQL聚合函数针对每个组或SQL分区中指定列的值进行聚合,并为每个组返回包含聚合值的单行。
通用聚合函数
array_agg
从表达式元素创建数组。
array_agg
返回一个 LIST
类型,InfluxDB 不支持。要使用 InfluxDB,请使用方括号引用返回数组中元素的索引。数组是1索引。
array_agg(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
avg
返回指定列中数值的平均值。
avg(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
别名
mean
bit_and
计算所有非空输入值的按位 AND
。
bit_and(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
bit_or
计算所有非空输入值的按位 OR。
bit_or(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
bit_xor
计算所有非空输入值的按位异或(XOR)。
bit_xor(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
bool_and
如果所有非空输入值都是 true
,则返回 true
,否则返回 false
。
bool_and(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
bool_or
如果任何非空输入值是 true
,则返回 true
,否则返回 false
。
bool_or(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
count
返回指定列中的行数。
计数包括 null 值。要从总数中排除 null 值,请在 WHERE
子句中包含 <column> IS NOT NULL
。
count(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
first_value
根据指定的排序返回聚合组中的第一个元素。如果没有指定排序,则返回组中的任意元素。
first_value(expression [ORDER BY expression])
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
last_value
根据指定的排序返回聚合组中的最后一个元素。如果没有指定排序,则返回组中的任意元素。
last_value(expression [ORDER BY expression])
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
max
返回指定列中的最大值。
max(expression)
要返回最大值及其关联的时间戳,请使用 selector_max
。
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
mean
avg 的别名。
median
返回指定列中的中值。
median(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
min
返回指定列中的最小值。
min(expression)
要返回最小值及其关联的时间戳,请使用 selector_max
。
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
sum
返回指定列中所有值的总和。
sum(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
统计聚合函数
- corr
- covar
- covar_pop
- covar_samp
- regr_avgx
- regr_avgy
- regr_count
- regr_intercept
- regr_r2
- regr_slope
- regr_sxx
- regr_syy
- regr_sxy
- stddev
- stddev_pop
- stddev_samp
- var
- var_pop
- var_samp
corr
返回两个数值之间的相关系数。
corr(expression1, expression2)
参数
- expression1:要操作的第一个列或文字值。
- expression2:要操作的第二个列或文字值。
covar
返回一组数字对的协方差。
covar(expression1, expression2)
参数
- expression1:要操作的第一个列或文字值。
- expression2:要操作的第二个列或文字值。
covar_pop
返回一组数字对的总体协方差。
covar_pop(expression1, expression2)
参数
- expression1:要操作的第一个列或文字值。
- expression2:要操作的第二个列或文字值。
covar_samp
返回一组数字对的样本协方差。
covar_samp(expression1, expression2)
参数
- expression1:要操作的第一个列或文字值。
- expression2:要操作的第二个列或文字值。
regr_avgx
计算自变量(输入)expression_x
的平均值,其中 expression_y
为非空因变量。
regr_avgx(expression_y, expression_x)
参数
- expression_y:因变量。可以是常数、列或函数,以及任意组合的算术运算符。
- expression_x:自变量。可以是常数、列或函数,以及任意组合的算术运算符。
regr_avgy
计算非空因变量(输出)expression_y
的平均值。
regr_avgy(expression_y, expression_x)
参数
- expression_y:因变量。可以是常数、列或函数,以及任意组合的算术运算符。
- expression_x:自变量。可以是常数、列或函数,以及任意组合的算术运算符。
regr_count
计算非空配对数据点的数量。
regr_count(expression_y, expression_x)
参数
- expression_y:因变量。可以是常数、列或函数,以及任意组合的算术运算符。
- expression_x:自变量。可以是常数、列或函数,以及任意组合的算术运算符。
regr_intercept
计算线性回归线的截距。对于方程 (y = kx + b)
,此函数返回 b
。
regr_intercept(expression_y, expression_x)
参数
- expression_y:因变量。可以是常数、列或函数,以及任意组合的算术运算符。
- expression_x:自变量。可以是常数、列或函数,以及任意组合的算术运算符。
regr_r2
计算自变量和因变量之间相关系数的平方。
regr_r2(expression_y, expression_x)
参数
- expression_y:因变量。可以是常数、列或函数,以及任意组合的算术运算符。
- expression_x:自变量。可以是常数、列或函数,以及任意组合的算术运算符。
regr_slope
返回非空对在聚合列中的线性回归线的斜率。给定输入列 Y
和 X
:regr_slope(Y, X)
返回斜率(Y = k*X + b
中的 k
)使用最小均方误差拟合。
regr_slope(expression_y, expression_x)
参数
- expression_y:要操作的 Y 表达式。可以是常数、列或函数,以及任意组合的算术运算符。
- expression_x:要操作的 X 表达式。可以是常数、列或函数,以及任意组合的算术运算符。
regr_sxx
计算自变量的平方和。
regr_sxx(expression_y, expression_x)
参数
- expression_y:因变量。可以是常数、列或函数,以及任意组合的算术运算符。
- expression_x:自变量。可以是常数、列或函数,以及任意组合的算术运算符。
regr_syy
计算因变量的平方和。
regr_syy(expression_y, expression_x)
参数
- expression_y:因变量。可以是常数、列或函数,以及任意组合的算术运算符。
- expression_x:自变量。可以是常数、列或函数,以及任意组合的算术运算符。
regr_sxy
计算配对数据点的乘积之和。
regr_sxy(expression_y, expression_x)
参数
- expression_y:因变量。可以是常数、列或函数,以及任意组合的算术运算符。
- expression_x:自变量。可以是常数、列或函数,以及任意组合的算术运算符。
stddev
返回一组数字的标准差。
stddev(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
stddev_pop
返回一组数字的总体标准差。
stddev_pop(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
stddev_samp
返回一组数字的样本标准差。
stddev_samp(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
var
返回一组数字的统计方差。
var(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
var_pop
返回一组数字的统计总体方差。
var_pop(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
var_samp
返回一组数字的统计样本方差。
var_samp(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
近似聚合函数
approx_distinct
返回使用 HyperLogLog 算法计算的近似不同输入值的数量。
approx_distinct(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
approx_median
返回输入值的近似中位数(第50百分位数)。它是 approx_percentile_cont(x, 0.5)
的别名。
approx_median(expression)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
approx_percentile_cont
使用 t-digest 算法返回输入值的近似百分位数。
approx_percentile_cont(expression, percentile, centroids)
参数
expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
percentile:要计算的百分位数。必须是介于 0 和 1(含)之间的浮点值。
centroids:在 t-digest 算法中使用的中心点数量。默认为 100。
如果有这个数量或更少的唯一值,您可以得到精确的结果。更多的中心点数量会导致更精确的近似,但需要更多的内存来计算。
approx_percentile_cont_with_weight
使用 t-digest 算法返回输入值的加权近似百分位数。
approx_percentile_cont_with_weight(expression, weight, percentile)
参数
- expression:要操作的表达式。可以是常量、列或函数,以及任何算术运算符的组合。
- 权重:用作权重的表达式。可以是常数、列或函数,以及任意组合的算术运算符。
- percentile:要计算的百分位数。必须是介于 0 和 1(含)之间的浮点值。
这个页面有帮助吗?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一部分!我们欢迎并鼓励您对我们关于 InfluxDB 及其文档的反馈和错误报告。要获取支持,请使用以下资源
拥有年度或支持合同的客户 可以 联系 InfluxData 支持。