【发布时间】:2013-09-04 12:56:15
【问题描述】:
我有一个要 AGGREGATE 的元组集。
例如: 我有这个问题:
Select {[Sales Territory].[Sales Territory].DEFAULTMEMBER.children} on 0,
{[Sales Reason].[Sales Reason Type].DEFAULTMEMBER.children} on 1
From [Adventure Works]
当我想为其中一个轴添加 TOTAL 时,我会这样做:
WITH MEMBER [Sales Territory].[Sales Territory].[Total X] as 'AGGREGATE(AXIS(0))'
Select {[Sales Territory].[Sales Territory].[Total X],[Sales Territory].[Sales Territory].DEFAULTMEMBER.children} on 0
,{[Sales Reason].[Sales Reason Type].DEFAULTMEMBER.children} on 1 From [Adventure Works]
现在,一切都很好。 但是当我试图聚合一个交叉连接集时它失败了。 请以这个查询为例:
Select {[Sales Territory].[Sales Territory].DEFAULTMEMBER.children} on 0
,{[Sales Reason].[Sales Reason Type].DEFAULTMEMBER.children}*{[Sales Channel].[Sales Channel].DEFAULTMEMBER.children} on 1
From [Adventure Works]
请注意,我在 [Sales Reason].[Sales Reason Type] 和 [Sales Channel].[Sales Channel] 之间进行了交叉连接
当有多个成员时,有没有办法在轴上进行总计?
谢谢!
P.S:我是 MDX 查询的新手
【问题讨论】:
-
您的维度的默认成员是否设置为 ALL?如果是这样,您可以在 1 上尝试以下操作而不是您当前的交叉连接吗? "{ [Sales Reason].[Sales Reason Type].members * [Sales Channel].[Sales Channel].members} on 1" 当您像这样执行 .members 时,它将包括所有成员。
标签: aggregate mdx cross-join