SQL聚合函数 STDDEV, STDDEV_SAMP, STDDEV_POP

2022-03-27 16:23:30 浏览数 (1)

SQL聚合函数 STDDEV, STDDEV_SAMP, STDDEV_POP

返回数据集的统计标准差的聚合函数。

大纲

代码语言:javascript复制
STDDEV([ALL | DISTINCT [BY(col-list)]] expression [%FOREACH(col-list)] [�TERHAVING])

STDDEV_SAMP([ALL | DISTINCT [BY(col-list)]] expression [%FOREACH(col-list)] [�TERHAVING])

STDDEV_POP([ALL | DISTINCT [BY(col-list)]] expression [%FOREACH(col-list)] [�TERHAVING])

参数

  • ALL - 可选-指定标准偏差函数返回表达式的所有值的标准偏差。如果未指定关键字,则这是默认值。
  • DISTINCT - 可选-指定标准偏差函数返回不同(唯一)表达式值的标准偏差的DISTINCT子句。DISTINCT可以指定BY(COL-LIST)子句,其中COL-LIST可以是单个字段,也可以是逗号分隔的字段列表。
  • expression - 任何有效的表达式。通常是包含要分析标准偏差的数据值的列的名称。
  • %FOREACH(col-list) - 可选-列名或逗号分隔的列名列表。
  • �TERHAVING - 可选-应用HAVING子句中的条件。

除非表达式的数据类型为DOUBLE,否则这些函数将返回数字数据类型。如果表达式为DOUBLE,则返回DOUBLE

描述

这三个标准差聚合函数在丢弃NULL值后返回表达式值分布的统计标准差。 也就是说,从数据集的平均值的标准差的量,表示为一个正数。 返回值越大,值的数据集的变化就越大。

STDDEV、STDDEV_SAMP (sample)STDDEV_POP (population)函数是由相应的方差聚合函数派生而来的:

STDDEV

VARIANCE

STDDEV_SAMP

VAR_SAMP

STDDEV_POP

VAR_POP

标准差是相应方差值的平方根。

这些标准差函数可以在引用表或视图的SELECT查询或子查询中使用。 它们可以在SELECT列表或HAVING子句中与普通字段值一起出现。

这些标准偏差函数不能在WHERE子句中使用。 它们不能在JOINON子句中使用,除非SELECT是子查询。

这些标准偏差函数返回数据类型NUMERIC的值,精度为36,刻度为17,除非表达式是数据类型DOUBLE,在这种情况下它返回数据类型DOUBLE

这些函数通常应用于具有数值的字段或表达式。 它们将非数值值(包括空字符串("))计算为零(0)。

这些标准偏差函数会忽略数据字段中的NULL值。 如果查询没有返回行,或者返回的所有行的数据字段值为NULL,则返回NULL

与所有聚合函数一样,标准差函数可以采用一个可选的DISTINCT子句。 STDDEV(DISTINCT col1)返回那些不同(唯一)的col1字段值的标准偏差。 STDDEV(DISTINCT BY(col2) col1)返回记录中col1字段值的标准差,其中col2值是不同的(唯一的)。 但是请注意,不同的col2值可能包含一个单独的NULL值。

当前事务期间所做的更改

与所有聚合函数一样,标准偏差函数总是返回数据的当前状态,包括未提交的更改,而不考虑当前事务的隔离级别。

0 人点赞