在Pentaho Mondrian 3.2中过滤掉空结果

时间:2012-06-07 06:46:19

标签: mdx mondrian

我正在使用Pentaho Mondrian 3.2。

我想计算具有[Measures].[CNT] > 0的特定范围内的天数。以下MDX查询计算所有日期,包括空结果和空结果:

WITH
MEMBER [Measures].[numofday]
    AS Count( Filter( [Date].[1390].[3].[10] : [Date].[1391].[3].[10]
                    , [Measures].[CNT].Currentmember > 0 ))

SELECT [Measures].[numofday] ON AXIS(0)
  FROM [Cube]

此外,非空功能在计算成员中不起作用。

如何修改此查询以获取正确的天数?

1 个答案:

答案 0 :(得分:1)

Count函数默认包含空成员;在这种情况下,您必须使用EXCLUDEEMPTY参数:

WITH
MEMBER [Measures].[numofday]
    AS Count( Filter( [Date].[1390].[3].[10] : [Date].[1391].[3].[10]
                    , [Measures].[CNT].Currentmember > 0 )
            , EXCLUDEEMPTY )

SELECT [Measures].[numofday] ON AXIS(0)
  FROM [Cube]