Sum - 图表函数

Sum() 用于计算聚合数据之间表达式或字段指定值的总和。

语法:  

Sum([{SetExpression}] [DISTINCT] [TOTAL [<fld {,fld}>]] expr)

返回数据类型: 数字

参数:  

参数 说明
expr 表达式或字段包含要度量的数据。
SetExpression 聚合函数会默认聚合选择项定义的可能记录集合。可选记录集合可由集合分析表达式定义。
DISTINCT 如果在函数参数前出现单词 DISTINCT,则将忽略计算该函数参数生成的副本。
备注: 虽然支持 DISTINCT限定符,但需慎用,因为它可能会在遗漏某些数据的情况下让读者误以为显示了总计值。
TOTAL

如果在函数参数前面出现单词 TOTAL,则计算给出当前选择项的所有可能值,而不只是属于当前维度值的那些值,即它会忽略图表维度。

TOTAL限定符后可能紧跟着一系列由尖括号括起来的一个或多个字段名<fld>。这些字段名应该是图表维度变量的子集。

另请: 定义聚合范围

示例和结果:  

Customer Product UnitSales UnitPrice
Astrida AA 4 16
Astrida AA 10 15
Astrida BB 9 9
Betacab BB 5 10
Betacab CC 2 20
Betacab DD - 25
Canutility AA 8 15
Canutility CC - 19
示例 结果

Sum(UnitSales)

38.UnitSales中值的合计。

Sum(UnitSales*UnitPrice)

505.UnitPrice乘以聚合 UnitSales 的合计。

Sum(TOTAL UnitSales*UnitPrice)

对表中的所有行以及总计都返回 505,因为在忽略图表维度的情况下,TOTAL限定符意味着总和仍是 505。

选择 Customer B

Sum({1} TOTAL UnitSales*UnitPrice)

505,与作出的选择无关,因为不管作出哪种选择,Set Analysis表达式 {1} 都会定义该记录集合将被评估为 ALL

示例中所使用的数据:

ProductData:

LOAD * inline [

Customer|Product|UnitSales|UnitPrice

Astrida|AA|4|16

Astrida|AA|10|15

Astrida|BB|9|9

Betacab|BB|5|10

Betacab|CC|2|20

Betacab|DD||25

Canutility|AA|8|15

Canutility|CC||19

] (delimiter is '|');