我希望使用MDX在MS Excel(用于OLAP数据透视表)中创建一个命名集,它将在特定度量的时间维度内总结一部分季度。
我尝试了以下内容,但都没有成功。第一个工作,但只返回所有季度的总数,而不是我想要的(前3个季度),它也不包括SUM。
{((SUBSET([Period].[Qtr].Members,0,2), [Measures].[Sales]))}
{SUM({SUBSET([Period].[Qtr].Members,0,2)}, [Measures].[Sales])}
为什么第二个不起作用?我也尝试了其他没有子集的规范,比如HEAD,Lead(#)和。& [#]都无济于事。一个例子是
Sum({[Period].[Qtr].Lead(0):[Period].[Qtr].Lead(2)}, [Measures].[Sales])
答案 0 :(得分:0)
当然,你的最后一个例子是非常好的MDX。如果你从中创建一个计算尺度,我就没有理由认为它不起作用。
以下是使用Adventure Works多维数据集的工作示例,基于您上面的工作:
WITH MEMBER [Measures].[SomeMeasure] AS
Sum({[Date].[Calendar Quarter].Lead(0):[Date].[Calendar Quarter].Lead(2)}, [Measures].[Internet Sales Amount])
SELECT
[Measures].[SomeMeasure] ON COLUMNS
FROM
[Adventure Works]
修改强>
要在多维数据集中创建计算度量,它将如下所示:
CREATE MEMBER [Measures].[SomeMeasure] AS
Sum({[Date].[Calendar Quarter].Lead(0):[Date].[Calendar Quarter].Lead(2)}, [Measures].[Internet Sales Amount])
在Excel中使用多维数据集时,此度量将与其他度量一起提供。 注意:因为您正在执行求和,所以这是一个计算度量。命名集是一组元组,例如一组约会成员,我不认为这是你想要的。