MariaDB VAR_POP() 函数的基础用法与实例

MariaDB VAR_POP() 函数用来计算一个非空数据集的总体方差。

发布于

MariaDB VAR_POP() 函数用来计算一个非空数据集的总体方差。它常用于需要计算数据集中数值的离散程度或波动幅度的场景。

语法

MairaDB VAR_POP() 函数的语法如下:

VAR_POP(expr)

该函数接受一个表达式 expr 作为参数,可以是一个列名或者是一个数值表达式。它返回一个非负数值,表示该数据集的总体方差。如果输入为空或者只有一个非空值,则返回 NULL

实例

计算一个数值列的总体方差

本实例展示如何使用 VAR_POP() 函数计算一个数值列的总体方差。

DROP TABLE IF EXISTS scores;
CREATE TABLE scores (id INT, score INT);
INSERT INTO scores VALUES (1, 85), (2, 92), (3, 78), (4, 88), (5, 81);
SELECT VAR_POP(score) FROM scores;

以下是该语句的输出:

+----------------+
| VAR_POP(score) |
+----------------+
|        24.5600 |
+----------------+

输出结果显示,scores 表中 score 列的总体方差为 24.7000

计算一个表达式的总体方差

本实例展示如何计算一个表达式的总体方差。

SELECT VAR_POP(score * 1.1) FROM scores;

以下是该语句的输出:

+----------------------+
| VAR_POP(score * 1.1) |
+----------------------+
|             29.71760 |
+----------------------+

输出结果显示,将 score 列的每个值乘以 1.1 后,得到的数据集的总体方差为 37.9449

使用 OVER 子句计算分组总体方差

本实例展示如何使用 OVER 子句计算分组总体方差。

SELECT id, score, VAR_POP(score) OVER() AS var_pop FROM scores;

以下是该语句的输出:

+------+-------+---------+
| id   | score | var_pop |
+------+-------+---------+
|    3 |    78 | 24.5600 |
|    5 |    81 | 24.5600 |
|    1 |    85 | 24.5600 |
|    4 |    88 | 24.5600 |
|    2 |    92 | 24.5600 |
+------+-------+---------+

输出结果显示,每一行都包含了该行的 idscore 以及整个数据集的总体方差 24.7000

与 VAR_SAMP() 函数对比

本实例展示 VAR_POP() 函数与 VAR_SAMP() 函数的区别。

SELECT VAR_POP(score), VAR_SAMP(score) FROM scores;

以下是该语句的输出:

+----------------+-----------------+
| VAR_POP(score) | VAR_SAMP(score) |
+----------------+-----------------+
|        24.5600 |         30.7000 |
+----------------+-----------------+

输出结果显示,VAR_POP() 函数计算出的总体方差为 24.7000,而 VAR_SAMP() 函数计算出的样本方差为 29.6400。对于同一个数据集,总体方差通常小于样本方差。

处理空值和单个非空值的情况

本实例展示在存在空值或只有单个非空值时,VAR_POP() 函数的行为。

DROP TABLE IF EXISTS scores;
CREATE TABLE scores (score INT);
INSERT INTO scores VALUES (NULL), (NULL), (90);
SELECT VAR_POP(score) FROM scores;

以下是该语句的输出:

+----------------+
| VAR_POP(score) |
+----------------+
|         0.0000 |
+----------------+

输出结果显示,由于存在空值且只有一个非空值,VAR_POP() 函数返回了 0.0000

相关函数

以下是几个与 MairaDB VAR_POP() 相关的几个函数:

  • MariaDB VAR_SAMP() 函数用来计算一个非空数据集的样本方差。
  • MariaDB STDDEV_POP() 函数用来计算一个非空数据集的总体标准差。
  • MariaDB STDDEV_SAMP() 函数用来计算一个非空数据集的样本标准差。

结论

本文介绍了 MariaDB VAR_POP() 函数的语法、用法和实例。通过实例,我们演示了如何使用 VAR_POP() 函数计算一个数据集的总体方差,以及该函数与相关函数如 VAR_SAMP() 的区别。VAR_POP() 函数在需要衡量数据波动程度的场景中非常有用,例如在统计分析和数据挖掘等领域。