1

我有一个带有名为 FactSales 的度量的多维数据集,其中包含每天的条目。

我有三个维度,日期、客户和客户类型。

每个 FactSales 行都通过外键链接到日期和客户。客户通过外键链接到客户类型。

由此,我能够在每个日期为每个客户吐出所有销售数据,这很棒。

我有多种类型:typeA、typeB、typeC、typeD、typeE。

我想要的是创建两个计算成员,它们的值按 typeA 为每个客户聚合,然后按其他类型聚合。

我现在拥有的是

 Case
    When IsEmpty( [Measures].[FactSales] ) or [Customer].[CustomerType].currentmember <> [Customer].[CustomerType].&[typeA]
    Then null
    ELSE ([Customer].[CustomerType].&[typeA], [Measures].[FactSales] )
END

但我认为这是错误的,我也不能使用相同的方法来获取除 typeA 之外的所有其他类型的值。当我将它提升到更高级别时,我也没有得到聚合。

任何人都可以帮忙吗?我可能没有很好地解释我的自我,所以如果您需要更多信息,请告诉我。

4

1 回答 1

1

你为什么要这么做?存储与单个事实无关的任何计算都不好,事实表行中的数据应仅对应于一个系统事实(订单、作业等),并且通过聚合您将能够获取基于任何维度的数据。您当前的结构很好,您可以通过在客户类型维度上切片多维数据集来轻松获得计算。

于 2013-05-14T09:13:10.927 回答