SUM 函數 - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

SUM 函數

SUM 函數傳回輸入欄或表達式值的總和。SUM 函數處理數值,且忽略 NULL 值。

語法

SUM ( [ DISTINCT | ALL ] expression )

引數

expression

函數運算的目標欄或表達式。expression 是下列其中一種資料類型:

  • SMALLINT

  • INTEGER

  • BIGINT

  • NUMERIC

  • DECIMAL

  • REAL

  • DOUBLE PRECISION

  • SUPER

DISTINCT | ALL

如果指定引數 DISTINCT,則函數在計算總和之前,將從指定的表達式中消除所有重複值。如果指定引數 ALL,則函數在計算總和時會保留表達式中的所有重複值。ALL 為預設值。

資料類型

SUM 函數支援的引數類型包括 SMALLINT、INTEGER、BIGINT、NUMERIC、DECIMAL、REAL、DOUBLE PRECISION 及 SUPER。

SUM 函數支援的傳回類型如下

  • BIGINT 代表 BIGINT、SMALLINT 及 INTEGER 引數

  • 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)

尋找五月售出的座位數:

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