STD

std([DISTINCT] expr)

功能描述

STD
STD
函数是
STDDEV_SAMP
STDDEV_SAMP
的别名,用于计算一组数值数据的样本标准差。标准差是衡量数据分散程度的统计指标,用于表示数据集中数值的离散程度。

参数说明

  • expr
    expr
    :数值类型的列或表达式,可以是
    TINYINT
    TINYINT
    SMALLINT
    SMALLINT
    INT
    INT
    BIGINT
    BIGINT
    FLOAT
    FLOAT
    DOUBLE
    DOUBLE
    DECIMAL
    DECIMAL
    类型。
  • DISTINCT
    DISTINCT
    :可选参数,当设置为
    DISTINCT
    DISTINCT
    时,函数将计算去重后的集合的标准差。如果未设置
    DISTINCT
    DISTINCT
    ,则计算包含重复值的集合的标准差。

返回类型

  • 返回
    DOUBLE
    DOUBLE
    类型的数值,表示数据集的样本标准差。

注意事项

  • 如果输入的数据集包含
    NULL
    NULL
    值,
    NULL
    NULL
    值将不参与计算。
  • STD
    STD
    函数与
    STDDEV_SAMP
    STDDEV_SAMP
    函数完全相同,可以互换使用。

使用示例

  1. 基本使用

SELECT std(col) FROM VALUES (1), (2), (3), (3), (NULL) AS tab(col); +--------------------+ | `std`(col) | +--------------------+ | 0.9574271077563381 | +--------------------+

  1. 使用 DISTINCT 关键字

SELECT std(DISTINCT col) FROM VALUES (1), (2), (3), (3), (NULL) AS tab(col); +----------------------+ | `std`(DISTINCT col) | +----------------------+ | 1 | +----------------------+

  1. 使用 FILTER 子句条件性地计算标准差

SELECT std(col) FILTER (WHERE col > 1) FROM VALUES (1), (2), (3), (4) AS tab(col); +----------------------------------+ | std(col) FILTER (WHERE col > 1) | +----------------------------------+ | 1 | +----------------------------------+

  1. 按分组计算标准差

SELECT c, std(col) FROM VALUES ('a', 1), ('a', 2), ('a', 3), ('b', 10), ('b', 20) AS tab(c, col) GROUP BY c; +---+--------------------+ | c | std(col) | +---+--------------------+ | a | 1 | | b | 7.0710678118654755 | +---+--------------------+

联系我们
预约咨询
微信咨询
电话咨询
邮件咨询