Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
计算由数字表达式组成的总体的标准差,类型为 DOUBLE。
STDDEV_POP( numeric-expression )
STDDEV_POP( numeric-expression ) OVER ( window-spec )
window-spec : see Syntax 2 instructions in the Remarks section below
numeric-expression 一个表达式,其基于总体的标准差是以一组行为基础进行计算。此表达式通常是列名。
DOUBLE
此函数将其参数转换为 DOUBLE,并以双精度浮点运算执行计算。
根据下面的公式计算基于总体的标准差:
s = [ (1/N) * SUM( xI - mean( x ) )2 ]½
此标准差不包括 numeric-expression 是 NULL 的行。对于不包含任何行的组,它返回 NULL。
有关执行的统计计算的详细信息,请参见集合函数的数学公式。
语法 2 表示作为 SELECT 语句中的窗口函数的用法。因此,可以在函数语法中指定 window-spec 的元素(内置),也可以将这些元素与 SELECT 语句中的 WINDOW 子句一并加以指定。请参见WINDOW 子句中提供的 window-spec 定义。
有关在 SELECT 语句中使用窗口函数的详细信息(包括工作示例),请参见窗口函数。
有关在 OVER 子句中指定窗口说明的详细信息,请参见窗口定义:内置使用 OVER 子句和 WINDOW 子句。
SQL/2008 STDDEV_POP 函数是可选 SQL/2008 语言功能 T621 "增强的数字函数" 的一部分。用作窗口函数时,STDDEV_POP 是可选 SQL 基础功能 T611 "基础 OLAP 操作" 的组成部分。
对不是列引用的表达式指定 DISTINCT 的能力是可选 SQL 语言功能 F561 "全值表达式" 的组成部分。SQL Anywhere 还支持 SQL/2008 语言功能 F441 "扩展集函数支持",允许集合函数的操作数是任意表达式,可能包括对其它查询块中不是列引用的表达式的外部引用。
SQL Anywhere 不支持可选的 SQL/2008 功能 F442 "集函数中的混合列引用"。SQL Anywhere 不允许集合函数参数既含有来自包含 STDDEV_POP 函数的查询块的列引用,又含有外部引用。有关示例内容,请参见AVG 函数 [Aggregate]。
以下语句列出不同时间段每个订单的产品数目的平均值和方差:
SELECT YEAR( ShipDate ) AS Year, QUARTER( ShipDate ) AS Quarter, AVG( Quantity ) AS Average, STDDEV_POP( quantity ) AS Variance FROM SalesOrderItems GROUP BY Year, Quarter ORDER BY Year, Quarter;