删除 MDX 查询中所有(度量)列均为空的行



我有以下MDX查询

SELECT
NON EMPTY
{                  
    [Measures].[Date]   
    ,[Measures].[count]  
    ,[Measures].[Growth]
    ,[Measures].[Growth percentage]
}
ON COLUMNS,
NON EMPTY
(
    NONEMPTY(
     [Business Unit].[BU Number].[BU Number])
    ,[Department].[Deptnumber].[Deptnumber]
    ,SelectedPeriod
)
ON ROWS
FROM Cube

结果我得到

Bu Number DeptNumber  Period     Date  count  Growth  Growth percentage
1         a           1/1        null  null   null    null
1         a           1/1        null  null   null    null
1         b           1/1        1     null   null    null

我只想要至少填充一个字段的地方( 计数 成长 增长百分比)所以当我看到所有空值时,应该删除该行

在此示例中,非空不这样做

那么如何解决这个问题

谢谢

试试这个:

SELECT
{                  
    [Measures].[Date]   
    ,[Measures].[count]  
    ,[Measures].[Growth]
    ,[Measures].[Growth percentage]
}
ON COLUMNS,
NONEMPTY(
    [Business Unit].[BU Number].[BU Number].Members
     *[Department].[Deptnumber].[Deptnumber].Members
     *SelectedPeriod,
    {
     [Measures].[count]  
    ,[Measures].[Growth]
    ,[Measures].[Growth percentage]
    }
)
ON ROWS
FROM Cube

我添加了一个成员以使 measure.date 为空,如果任何其他位置为 null这行得通,但现在性能不存在。它适用于某些数据过滤器,但 98% 在长时间等待后没有给出结果

MEMBER [Measures].[Date calc] AS 
(
   IIF( [Measures].[Date] = null  
    AND [Measures].[count] = null 
    AND [Measures].[Growth] = null
    AND [Measures].[Growth percentage] = null, Null, [Measures].[Date]  )  
)

我用了非空 交叉连接( 分层(),
分层(), SelectedPeriode )
在行上

这解决了性能问题

最新更新