如何在聚合之前乘以两个度量
How to multiply two measures prior to aggregation
我有两个措施。第一个是金额,第二个由值 -1,0 和 1 组成,所以 table 看起来像这样:
Amount Sign
--------------
400 -1
200 1
300 0
我想要得到的结果是 400*(-1) + 200*1 + 300*0 = -200
,但我得到的是 (400+200+300)*(-1+1+0) = 0
这是我的计算成员:
WITH
MEMBER [Measures].[Result]
AS
[Measures].[Sign]*[Measures].[Amount]
select
[Measures].[Result] on 0,
[Time].[Time].members on 1
from [MyCube]
在您的 SSAS 项目中,转到数据源视图,为基础事实 table 添加一个 NamedCalculation。在那做你解释的乘法。现在在多维数据集中添加它作为度量。它会完全按照您希望的方式运行。
我有两个措施。第一个是金额,第二个由值 -1,0 和 1 组成,所以 table 看起来像这样:
Amount Sign
--------------
400 -1
200 1
300 0
我想要得到的结果是 400*(-1) + 200*1 + 300*0 = -200
,但我得到的是 (400+200+300)*(-1+1+0) = 0
这是我的计算成员:
WITH
MEMBER [Measures].[Result]
AS
[Measures].[Sign]*[Measures].[Amount]
select
[Measures].[Result] on 0,
[Time].[Time].members on 1
from [MyCube]
在您的 SSAS 项目中,转到数据源视图,为基础事实 table 添加一个 NamedCalculation。在那做你解释的乘法。现在在多维数据集中添加它作为度量。它会完全按照您希望的方式运行。