MySQL - VAR_POP() 函数
MySQL VAR_POP() 函数计算并返回特定列的总体标准方差。它衡量集合中每个数字与整个集合平均值的差异。如果指定的行不存在,此函数将返回 NULL。
此函数仅适用于数值数据类型的列/字段,因为会对其进行数学运算。
语法
以下是 MySQL VAR_POP() 函数的语法 -
VAR_POP(expr);
参数
此方法接受一个参数。如下所示:-
expr: 我们要计算总体标准方差的表达式或列。
返回值
此函数计算并返回特定列的总体标准方差。
示例
首先,我们使用 CREATE TABLE 语句创建一个名为 CUSTOMERS 的表,如下所示:-
CREATE TABLE CUSTOMERS ( ID INT AUTO_INCREMENT, NAME VARCHAR(20) NOT NULL, AGE INT NOT NULL, ADDRESS CHAR (25), SALARY DECIMAL (18, 2), PRIMARY KEY (ID) );
以下查询将 7 条记录插入到上面创建的表中 -
INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES (1, 'Ramesh', 32, 'Ahmedabad', 2000.00 ), (2, 'Khilan', 25, 'Delhi', 1500.00 ), (3, 'Kaushik', 23, 'Kota', 2000.00 ), (4, 'Chaitali', 25, 'Mumbai', 6500.00 ), (5, 'Hardik', 27, 'Bhopal', 8500.00 ), (6, 'Komal', 22, 'Hyderabad', 4500.00 ), (7, 'Muffy', 24, 'Indore', 10000.00 );
执行以下查询以获取插入到 CUSTOMERS 表的所有记录 -
Select * From CUSTOMERS;
以下是 CUSTOMERS 表 -
ID | NAME | AGE | ADDRESS | SALARY |
---|---|---|---|---|
1 | Ramesh | 32 | Ahmedabad | 2000.00 |
2 | Khilan | 25 | Delhi | 1500.00 |
3 | Kaushik | 23 | Kota | 2000.00 |
4 | Chaitali | 25 | Mumbai | 6500.00 |
5 | Hardik | 27 | Bhopal | 8500.00 |
6 | Komal | 22 | Hyderabad | 4500.00 |
7 | Muffy | 24 | Indore | 10000.00 |
这里,我们使用 MySQL 的 VAR_POP() 函数来计算所有客户工资的总体标准方差 -
SELECT VAR_POP(SALARY) FROM CUSTOMERS;
输出
这将产生以下结果 -
VAR_POP(SALARY) |
---|
10000000 |
示例
让我们考虑一个场景,数据集中存在相同的值 -
在 CUSTOMERS 表中,ID 为 2 和 5 的客户年龄相同。如果我们计算他们年龄的方差,VAR_POP() 函数将返回 0,因为两者的年龄值相同。
SELECT VAR_POP(AGE) FROM CUSTOMERS WHERE ID = 2;
上述查询的输出如下所示 -
VAR_POP(AGE) |
---|
0 |
现在,我们考虑一个数据集中只有一个值的情况 -
SELECT VAR_POP(AGE) FROM CUSTOMERS WHERE ID = 3;
上述查询的结果也将为 0,因为只有一位年龄为 23 的客户 -
VAR_POP(AGE) |
---|
0 |
现在,我们考虑一个数据集中没有数据的情况 -
SELECT VAR_POP(AGE) FROM CUSTOMERS WHERE ID = 10;
此查询的结果将为 NULL,因为表中没有 ID = 10 的值 -
VAR_POP(AGE) |
---|
NULL |