MDX函数查找成员IsMemberOf是否有一组

Seb*_*THU 2 ssas mdx

这感觉就像一个非常基本的问题,因为它是我正在寻找的一个非常基本的功能.

我知道你可以这样做:

([Dimension].CurrentMember IS [Dimension].[AParticularMember])
Run Code Online (Sandbox Code Playgroud)

并且您获得逻辑1或0作为函数值.

但是你怎么做这种事情,没有在很多丑陋的OR中连接IS函数:

([Dimension].CurrentMember ISAMEMBEROF 
     {[Dimension].[AMember],[Dimension].[AnotherMember],[Dimension].[YetAnotherMember]}
)
Run Code Online (Sandbox Code Playgroud)

这只是一个基本的集合操作,只是在一个维度上,但我找不到那个该死的函数.我试过这个:

NOT(ISEMPTY(INTERSECT([Dimension].CurrentMember,
{[Dimension].[AMember],[Dimension].[AnotherMember],[Dimension].[YetAnotherMember]})))
Run Code Online (Sandbox Code Playgroud)

但它为每个维度成员返回True.我猜这是因为进入ISEMPTY函数的不是维度成员,而是元组

([Dimension].CurrentMember,[AnotherDimension].DefaultMember,  
[YetAnotherDimension].DefaultMember,... ,Measures.DefaultMember)
Run Code Online (Sandbox Code Playgroud)

我正在寻找的那种功能是否存在于MDX中?

Gre*_*way 5

你很亲密:

INTERSECT([Dimension].CurrentMember,
{[Dimension].[AMember],[Dimension].[AnotherMember],[Dimension].[YetAnotherMember]}).Count > 0
Run Code Online (Sandbox Code Playgroud)