

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# VAR\_SAMP 和 VAR\_POP 函数
<a name="VARIANCE_functions"></a>

 VAR\_SAMP 和 VAR\_POP 函数返回一组数值（整数、小数或浮点）的样本方差和总体方差。VAR\_SAMP 函数的结果等于同一组值的样本标准差的平方。

VAR\_SAMP 和 VARIANCE 是同一函数的同义词。

## 语法
<a name="VARIANCE_functions-syntax"></a>

```
VAR_SAMP | VARIANCE ( [ DISTINCT | ALL ] expression)
VAR_POP ( [ DISTINCT | ALL ] expression)
```

表达式必须具有整数、小数或浮点数据类型。无论表达式的数据类型如何，此函数的返回类型都是双精度数。

**注意**  
这些函数的结果可能跨数据仓库集群而异，具体取决于每个案例中集群的配置。

## 使用说明
<a name="VARIANCE_usage_notes"></a>

当计算包含一个值的表达式的样本方差（VARIANCE 或 VAR\_SAMP）时，函数的结果为 NULL 而不是 0。

## 示例
<a name="VARIANCE_functions-examples"></a>

以下查询返回 LISTING 表中 NUMTICKETS 列的已取整样本方差和总体方差。

```
select avg(numtickets),
round(var_samp(numtickets)) varsamp,
round(var_pop(numtickets)) varpop
from listing;

avg | varsamp | varpop
-----+---------+--------
10 |      54 |     54
(1 row)
```

以下查询运行相同的计算但将结果转换为小数值。

```
select avg(numtickets),
cast(var_samp(numtickets) as dec(10,4)) varsamp,
cast(var_pop(numtickets) as dec(10,4)) varpop
from listing;

avg | varsamp | varpop
-----+---------+---------
10 | 53.6291 | 53.6288
(1 row)
```