MySQL - VAR_SAMP() 函数
MySQL 中的 VAR_SAMP() 函数用于计算某一列中一组值的样本方差。它衡量样本值与样本平均值的差异。如果指定的行不存在,此函数将返回 NULL。
此函数仅适用于数值类型的列/字段,因为会对其进行数学运算。
语法
以下是 MySQL VAR_SAMP() 函数的语法 -
VAR_SAMP(expr);
参数
此方法接受一个参数。如下所示:-
expr: 包含要计算样本方差的数值的表达式或列。
返回值
此函数计算并返回特定列中一组值的样本方差。
示例
在下面的查询中,我们使用 CREATE 语句创建一个名为 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_SAMP() 函数来计算所有客户工资的样本方差 -
SELECT VAR_SAMP(SALARY) From CUSTOMERS;
输出
这将产生以下结果 -
VAR_SAMP(SALARY) |
---|
11666666.666666666 |
以下查询的结果将为 NULL,因为表中 ID = 10 不存在任何值 -
SELECT VAR_SAMP(SALARY) From CUSTOMERS WHERE ID = 10;
输出
这将产生以下结果 -
VAR_SAMP(SALARY) |
---|
NULL |