Aggregate
返回一个数字,该数字是通过对集合表达式返回的单元格进行聚合来计算的。如果没有提供数值表达式,此函数将使用为每个度量值指定的默认聚合操作符在当前查询上下文中聚合每个度量值。如果提供了数值表达式,此函数将首先计算指定集合中每个单元格的数值表达式,然后对其求和。
语法
AGGREGATE(set [, numeric_value] )
参数
set | 返回集的有效多维表达式 (MDX)。 |
numeric_value | (可选)如果指定了numeric_value,此函数将根据度量维度自带的聚合符做聚合;如果不指定,默认进行累加。 |
数学表达式

例:若干个单元格的值为7,15,9,12,则
i=1时,x=7;
i=2时,x=15;
i=3时,x=9;
i=4时,x=12;
y = 7+15+9+12 = 43
备注
当前度量的聚合方式支持+、-、*、/、%
示例一
with member [科目].[x] as Aggregate({[期间].[2023年].[2023年3季度].Children},[科目].&[50221])
select {[科目].[x]} on rows, {[版本].&[50672]} on columns from [模型一]
where ([组织].&[50585],[场景].&[50685],[产品].&[50688])
运行结果:
产品 : 不分
场景 : 累计预算
期间 : 期间不分
组织 : 开发2部
科目 | 年初编报01版本 |
x | 24.00 |
期间维度[2023年3季度]的子项[2023年7月]、[2023年8月]、[2023年9月]的[科目].&[50221]值分别为7、8、9,numeric_value的聚合方式为+,所以[x]的值为他们的求和,是24。
示例二
with member [科目].[x] as Aggregate({[期间].[2023年].[2023年3季度].Children}*{[科目].&[50221]})
select {[期间].[x]} on rows, {[版本].&[50672]} on columns from [模型一]
where ([组织].&[50585],[场景].&[50685],[产品].&[50688])
运行结果:
产品 : 不分
场景 : 累计预算
期间 : 期间不分
组织 : 开发2部
科目 | 年初编报01版本 |
x | 24.00 |
期间维度[2023年3季度]的子项[2023年7月]、[2023年8月]、[2023年9月]的[科目].&[50221]值分别为7、8、9,未指定numeric_value默认进行累加,所以[x]的值为24。