【问题标题】:MDX: calculated member, Comparing 2 dimension attributesMDX:计算成员,比较二维属性
【发布时间】:2018-01-08 15:40:59
【问题描述】:

我对 SSAS 及其对应的语言 MDX 非常陌生。所以这可能是一个新手问题。

我有一个带有事实表、游戏和 2 个维度的多维数据集,分别是玩家和事件。 每个维度都有一个日期。

我想做的是创建一个计算成员来计算每个赛事的新玩家数量,并排除已经参加过之前赛事的玩家。

代码的逻辑表示如下:

DistinctCount(
   IIF(
      [Customer].[Date registered as player] > [Sponsored events].[Start date]
      ,1
      ,0
   )
)

但这在 MDX 中不起作用。

【问题讨论】:

  • 如果我们有 DISTINCTCOUNT({1,1,1,1,1,...0,0,0,0,}) 那么答案总是 2 所以我们可以看到为什么这种表示不会给出正确的答案。

标签: ssas mdx


【解决方案1】:

如果没有关于多维数据集结构的更多信息,真的很难提供帮助 - 也许您可以添加一个向我们展示维度和层次结构的屏幕图。

你可以使用这样的方法:

SUM(
   [Customer].[Customer].[Customer].members
   ,IIF(
      [Customer].[Date registered as player].currentmember.membervalue 
          > [Sponsored events].[Start date].currentmember.membervalue
      ,1
      ,NULL
   )
)

以上只是伪代码,没有关于你的多维数据集结构的更多信息。

【讨论】:

    猜你喜欢
    • 2016-01-29
    • 1970-01-01
    • 2015-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多