如何使用MDX过滤两个成员属性?
目前我有以下解决方案。它有效,但我确信MDX
查询会更有效率。
查询设计器中的数据集具有以下MDX
以将成员属性包括为字段:
DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME, [Store].[Store].[Closed Date],[Store].[Store].[Opening Date]
我在数据集属性中使用了两个过滤器,其中包含以下表达式:
=Cint(Fields!Opening_Date.Value)
<
=Cint(Format(Today(), "yyyyMMdd"))
和
=Cint(Fields!Closed_Date.Value)
>
=Cint(Format(Today(), "yyyyMMdd"))
答案 0 :(得分:1)
我怀疑下面的表现会令人满意,但你可以试一试。
SELECT SomeDim.SomeHIerarchy.MEMBER
HAVING
Val(SomeDim.SomeHIerarchy.CURRENTMEMBER.Properties("Opening Date")) < Format(now(), "dd-MM-yyyy")
Val(SomeDim.SomeHIerarchy.CURRENTMEMBER.Properties("Closing Date")) > Format(now(), "dd-MM-yyyy")
ON 1,
Measures.Foo on 0
FROM [Your Cube]
答案 1 :(得分:0)
我发现使用过滤器是解决此问题的最佳方法:
filter(
[Store].[Store].members, [Store].[Store].Properties( "Opening Date" ) < Format(Now(),'yyyyMMdd')
and [Store].[Store].Properties( "Closed Date" ) > Format(Now(),'yyyyMMdd'))
)