Funzione SUM - Amazon Redshift

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Funzione SUM

La funzione SUM restituisce la somma dei valori dell'espressione o della colonna di input. La funzione SUM funziona con i valori numerici e ignora i valori NULL.

Sintassi

SUM ( [ DISTINCT | ALL ] expression )

Argomenti

expression

L'espressione o colonna di destinazione su cui viene eseguita la funzione. L'espressione è uno dei seguenti tipi di dati:

  • SMALLINT

  • INTEGER

  • BIGINT

  • NUMERIC

  • DECIMAL

  • REAL

  • DOUBLE PRECISON

  • SUPER

DISTINCT | ALL

Con l'argomento DISTINCT, la funzione elimina tutti i valori duplicati dall'espressione specificata prima di calcolare la somma. Con l'argomento ALL, la funzione mantiene tutti i valori duplicati dall'espressione per calcolare la somma. ALL è il valore predefinito.

Tipi di dati

I tipi di argomenti supportati dalla funzione SUM sono SMALLINT, INTEGER, BIGINT, NUMERIC, DECIMAL, REAL, DOUBLE PRECISION e SUPER.

I tipi di restituzione supportati dalla funzione SUM sono

  • BIGINT per gli argomenti BIGINT, SMALLINT, e INTEGER

  • NUMERIC per gli argomenti NUMERIC

  • DOUBLE PRECISION per argomenti del numero in virgola mobile

  • Restituisce lo stesso tipo di dati come espressione per qualsiasi altro tipo di argomento.

La precisione di default per un risultato della funzione SUM con un argomento NUMERIC o DECIMAL è 38. Il ridimensionamento del risultato coincide con il ridimensionamento dell'argomento. Ad esempio, un SUM di una colonna DEC(5,2) restituisce un tipo di dati DEC(38,2).

Esempi

Trovare la somma di tutte le commissioni pagate dalla tabella SALES:

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

Trovare il numero di posti in tutti i luoghi dello stato della Florida:

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

Trovare il numero di posti venduti a maggio:

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