Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
返回每一组行的指定表达式总数。
SUM( [ ALL | DISTINCT ] expression )
SUM( [ ALL ] expression ) OVER ( window-spec )
window-spec : see Syntax 2 instructions in the Remarks section below
[ ALL ] expression 要求和的表达式的名称。这通常是列名。
DISTINCT expression 计算每组中 expression 的唯一值的总和。
不包括指定表达式为 NULL 的行。
对于不包含任何行的组返回 NULL。
语法 2 表示作为 SELECT 语句中的窗口函数的用法。因此,可以在函数语法中指定 window-spec 的元素(内置),也可以将这些元素与 SELECT 语句中的 WINDOW 子句一并加以指定。请参见WINDOW 子句中提供的 window-spec 定义。
有关在 SELECT 语句中使用窗口函数的详细信息(包括工作示例),请参见窗口函数。
有关在 OVER 子句中指定窗口说明的详细信息,请参见窗口定义:内置使用 OVER 子句和 WINDOW 子句。
该函数可能会产生溢出错误,从而导致返回错误。对 numeric-expression 使用 CAST 函数可避免出现溢出错误。请参见CAST 函数 [Data type conversion]。
SQL/2008 核心特性。用作窗口函数时(语法 2),SUM 是可选 SQL/2008 语言功能 T611 "基本 OLAP 操作" 的组成部分。
对不是列引用的表达式指定 DISTINCT 的能力是可选 SQL 语言功能 F561 "完全值表达式" 的组成部分。SQL Anywhere 还支持 SQL/2008 语言功能 F441 "扩展集函数支持",允许集合函数的操作数是任意表达式,可以包括对其它查询块中不是列引用的表达式的外部引用。
SQL Anywhere 不支持可选的 SQL/2008 功能 F442 "集函数中的混合列引用"。SQL Anywhere 不允许集合函数参数既含有来自包含 SUM 函数的查询块的列引用,又含有外部引用。请参见集合函数和外部引用。有关示例内容,请参见AVG 函数 [Aggregate]。
以下语句返回值 3749146.740。
SELECT SUM( Salary ) FROM Employees;