MySQL中的调和平均和二次平均

MySQL中的调和平均和二次平均,mysql,Mysql,我的数据库中有一列数据,我需要找到一些数学运算(平均值)。 对于算术平均值,SQL具有聚合函数AVG(),对于几何平均值,我可以使用以下函数 select exp(sum(ln(column)) / count(*)) from data_table 还是这个问题 select exp(avg(ln(column))) from data_table 但我也需要调和平均值和二次平均值。我如何在MySQL中做到这一点?提前感谢。根据维基上的公式 您可以使用count(*)/sum(1/col)

我的数据库中有一列数据,我需要找到一些数学运算(平均值)。 对于算术平均值,SQL具有聚合函数AVG(),对于几何平均值,我可以使用以下函数

select exp(sum(ln(column)) / count(*)) from data_table
还是这个问题

select exp(avg(ln(column))) from data_table
但我也需要调和平均值和二次平均值。我如何在MySQL中做到这一点?提前感谢。

根据维基上的公式

您可以使用
count(*)/sum(1/col)
表达式

您可以使用
sqrt(sum(col*col)/count(*)

select 
count(*)/sum(1/col) harmonic_mean,
sqrt(sum(col * col)/count(*)) quadratic_mean
from table1
SELECT COUNT(*)/SUM(1/column_value) FROM data_table;
SELECT SQRT(SUM(column_value*column_value)/COUNT(*)) FROM data_table;