我想要实现的目标
我需要返回共享同一父成员的成员实例的计数,并在每行上显示它,约束成员。我不确定如何最好地解释这一点,所以我在下面添加了一个我想要实现的图像。
因为Delta下有四个不同的成员,Delta的计数是四。
为什么我要努力实现它
我需要将结果数据过滤到每个父项的最后一行,因此Delta只返回成员4的行。如果您可以建议更好的方法来执行此操作,我会很感激。
我尝试了什么
我一直在尝试将其构建为计算成员,但找不到任何有效的内容。我已经浏览了MSDN上所有不同的COUNT格式,找不到有效的格式。
CODE
WITH MEMBER [Measures].[Count]
AS COUNT([Person].[Person ID].CURRENTMEMBER.PARENT.CHILDREN)
SELECT {
[Measures].[Value]
,[Measures].[Count]
} ON 0
,NONEMPTY (
[Date].[Date].[Date].MEMBERS *
[Transaction Number].[Transaction Number].[Transaction Number].MEMBERS *
[Person].[Person ID].[Person ID].MEMBERS
,[Measures].[Value]
) ON 1
FROM (SELECT [Date].[Date].[Date].&[20150107] ON 0 FROM [My DW]);
答案 0 :(得分:1)
试试这个:
with member [Measures].CountOfSiblings as
COUNT(dim.hier.CURRENTMEMBER.PARENT.CHILDREN)
select dim.hier.level2.members on 1,
{[Measures].[value], [Measures].CountOfSiblings} on 0
from [aw cube]
.hier.currentmember.parent.children
部分将为轴上的当前成员的父级生成一组所有子项。
它将返回成员,度量值以及成员父母拥有的子女数量。
修改强> 根据我们后来的对话,我认为以下内容将更符合要求:
WITH MEMBER [Measures].[Count]
AS COUNT
(
NonEmpty
(
[Person].[Person ID].MEMBERS,
{([Measures].[Value] , [Transaction Number].[Transaction Number].CURRENTMEMBER)}
)
)
答案 1 :(得分:0)
目前未经测试,我远离AdvWrks,但我稍后将在该多维数据集中进行原型制作:
WITH MEMBER [Measures].[Count] AS
COUNT(
NONEMPTY(
EXISTS(
[Person].[Person ID].[Person ID].MEMBERS
,{[Person].[Person ID].CURRENTMEMBER.PARENT}
)
, [Measures].[Value]
)
...