【问题标题】:Dimension distinct count SSAS within the context of other dimensions其他维度上下文中的维度不重复计数 SSAS
【发布时间】:2015-04-13 15:57:47
【问题描述】:

我有这个 MDX;

CREATE MEMBER CURRENTCUBE.[Measures].DistinctOrderCount<br/>
AS 
  DistinctCount([Order].[Order Id].[Order Id] - [Order].[Order Id].[1]),<br/>
FORMAT_STRING = "#,##0;-#,##0", 
VISIBLE = 1,  ASSOCIATED_MEASURE_GROUP = 'Fact Sales';

我正在尝试在我的事实表中的其他维度的上下文中执行不同的订单(订单 ID=1 除外)。例如,昏暗的客户、昏暗的城市、昏暗的州等不同的订单数量,但我无法做到这一点。当我在报告中查看我的度量时,我得到了不同数量的订单维度,即 21 显示在所有客户行上。

【问题讨论】:

    标签: sql-server-2012 ssas mdx olap


    【解决方案1】:

    这是我解决此问题的最佳方法,我对结果感到满意。希望这可以帮助其他人。这个想法是,创建一个聚合类型 Distinct Count 的多维数据集度量,并在您想要不同计数的列上设置列绑定。然后使用下面的 MDX 从您的不同计数中过滤掉虚拟订单 ID。

    create member currentcube.[Measures].OrderCount<br/>
    as<br/>
    distinctcount
    (
    
        existing 
        CROSSJOIN
                 (
                  Except([Orders].[Order Id].[Order Id], [Orders].[Order Id].&[1]), 
                  [Measures].[Order Count]
                 )
    
    ),<br/>
    FORMAT_STRING = "#,##0;-#,##0", 
    VISIBLE = 1, ASSOCIATED_MEASURE_GROUP='Order Count';
    

    【讨论】:

    • @whytheq,您的意见非常有价值,因此我能够将这些点连起来并起草解决方案。谢谢,很高兴与您合作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-28
    • 1970-01-01
    相关资源
    最近更新 更多