我有以下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 )
在行上
这解决了性能问题