MySQL - VAR_SAMP() 函数



MySQL 中的 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 姓名 年龄 地址 薪水
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
广告