SUM 函数 - Amazon Redshift

SUM 函数

SUM 函数返回输入列值或表达式值的和。SUM 函数使用数值并忽略 NULL 值。

语法

SUM ( [ DISTINCT | ALL ] expression )

参数

expression

对其执行函数的目标列或表达式。表达式为以下数据类型之一:

  • SMALLINT

  • INTEGER

  • BIGINT

  • NUMERIC

  • DECIMAL

  • REAL

  • DOUBLE PRECISON

  • SUPER

DISTINCT | ALL

利用参数 DISTINCT,该函数可在计算和之前消除指定表达式中的所有重复值。利用参数 ALL,该函数可保留表达式中的所有重复值以计算和。ALL 是默认值。

数据类型

SUM 函数支持的参数类型为 SMALLINT、INTEGER、BIGINT、NUMERIC、DECIMAL、REAL、DOUBLE PRECISION 和 SUPER。

SUM 函数支持的返回类型为

  • 适用于 BIGINT、SMALLINT 和 INTEGER 参数的 BIGINT

  • 适用于 NUMERIC 参数的 NUMERIC

  • 适用于浮点参数的 DOUBLE PRECISION

  • 返回与任何其他参数类型的表达式相同的数据类型。

带有 NUMERIC 或 DECIMAL 参数的 SUM 函数结果的默认精度为 38。结果的小数位数与参数的小数位数相同。例如,DEC(5,2) 列的 SUM 返回 DEC(38,2) 数据类型。

示例

从 SALES 表中查找所有已付佣金的和:

select sum(commission) from sales; sum ------------- 16614814.65 (1 row)

查找佛罗里达州的所有场地的座位数:

select sum(venueseats) from venue where venuestate = 'FL'; sum -------- 250411 (1 row)

查找 5 月份售出的座位数:

select sum(qtysold) from sales, date where sales.dateid = date.dateid and date.month = 'MAY'; sum ------- 32291 (1 row)