Sum: sum

Syntax

  • Aggregate syntax

in a Data Set expression

sum ( dataset { groupingClause } )

in a Component expression within an aggr clause

sum ( component ) { groupingClause }

  • Analytic syntax

in a Data Set expression

sum ( dataset over ( analyticClause ) )

in a Component expression within a calc clause

sum ( component over ( analyticClause ) )

Input parameters

dataset

the operand Data Set

component

the operand Component

groupingClause

see Aggregate invocation

analyticClause

see Analytic invocation

Semantics for scalar operations

This operator cannot be applied to scalar values.

Input parameters type

dataset

dataset { measure<number> _+ }

component

component<number>

Result type

result

dataset { measure<number> _+ }
| component<number>

The result is declared with type number. Since integer is a subtype of number, implementations may preserve the integer type for the resulting measure or component when all operand values are integer and the sum is computed in integer arithmetic. When any operand value is a non-integer number, the result is a number. Implementations should document their policy when integer sums overflow the representable range of integer (for example: error, widening to number, or wrap-around).

Additional Constraints

None.

Behaviour

The operator returns the sum of the input values. For other details, see Aggregate and Analytic invocations.

Examples

Given the operand dataset DS_1:

Input DS_1 (see structure)

Id_1

Id_2

Id_3

Me_1

2011

A

XX

3

2011

A

YY

5

2011

B

YY

7

2012

A

XX

2

2012

B

YY

4

Example 1

DS_r := sum ( DS_1 group by Id_1 );

results in (see structure):

DS_r

Id_1

Me_1

2011

15

2012

6