繁体   English   中英

MDX-仅汇总选定的维成员?

[英]MDX - Sum only selected dimension members?

我对MDX相当陌生,我对其中一项措施的汇总存在一些疑问。

在我的DSV中,我有一个“事件”表。 我们跟踪运行这些事件的代理,由于运行一个事件可能涉及多个代理,因此我将其拆分成一个单独的“ Agent”表,中间是一个桥接表:

http://imgur.com/uAy3moC

我想跟踪所谓的“覆盖率”,即在特定一周内举行的活动数,以及运行该活动的每个代理商。 因此,如果一周举行3个事件,而其中两个事件是由两名特工执行的,则覆盖范围为4。

当我去分析多维数据集时,在“周开始时间”和“事件计数”上拖动时,我注意到这是不对的-它仅考虑单个事件,而不考虑代理人数。 拖动Agent可以解决此问题,但我仍然希望看到整体图而不必拖动Agent。

所以我创建了一个计算成员,如下所示:

CREATE MEMBER CURRENTCUBE.[Measures].[Visit Coverage] AS IIF([Agents].[Agent].currentmember.parent IS NULL, SUM([Agents].[Agent].[Agent], [Measures].[Events Count]), [Measures].[Events Count]);

因此,基本上,如果选择了所有座席(parent为null),请汇总每个座席的所有事件计数,否则,如果要按座席进行分析,请给我每个单独座席的事件。 这很好用...而且如果我想按一种特定的代理进行过滤也可以用,但是如果我尝试按一种以上(但少于全部)的代理进行过滤,则会掉下去,给我一个空值。

我完全不知道如何解决这一问题,有人可以帮我吗?

克里斯

您的表设计满足了对事件数量进行计数的要求,并通过主要事实表和代理维度表之间的多对多桥接表来避免对代理进行重复计数。 如果你想有一个避免重复计算的措施,那么它的事实表应该直接链接维度表。

因此,我将创建一个视图或命名查询,该视图或查询具有指向您的三个维度表的外键,并将其用作现有现有度量值组的基础。 该视图或命名查询仅可以作为主要事实表和桥表的联接而构建。 然后将一个计数作为覆盖率度量值添加到该度量值组。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM