结果集MDX中不允许任何空值
我想排除MDX查询中有空值的任何行。听起来很简单:结果集MDX中不允许任何空值,mdx,Mdx,我想排除MDX查询中有空值的任何行。听起来很简单: SELECT NON EMPTY{ .... } ON 0 etc... 但是,我的一列有值,即使其他列只包含空值。 例如: Area | ComputerSales | Areadirector WA (Null) Steve NY 21312 Mary 如何删除第一行,其中有一个(null)值?您可以使用例如FILTER和ISEMPTY函数 SELECT
SELECT
NON EMPTY{
....
}
ON 0
etc...
但是,我的一列有值,即使其他列只包含空值。
例如:
Area | ComputerSales | Areadirector
WA (Null) Steve
NY 21312 Mary
如何删除第一行,其中有一个(null)值?您可以使用例如FILTER和ISEMPTY函数
SELECT
[Measures].[Fac Count] on 0,
FILTER(
[Time].[Date Key].children,
NOT ISEMPTY([Measures].[Fac Count])
)
on 1
FROM
[Test]
这个简单的查询只返回Fac Count measure具有非空值的日期键。您可以使用
HAVING
SELECT
{
[Measures].[Computer Sales]
,[Measures].[Areadirector]
} ON 0
,[AreaDimension].[Area].[Area] HAVING
(NOT
IsEmpty([Measures].[Computer Sales])) ON 1
FROM [YourCube];
或者先在带有子句的中设置:
WITH
SET [S] AS
NonEmpty
(
[AreaDimension].[Area].[Area]
,[Measures].[Computer Sales]
)
SELECT
{
[Measures].[Computer Sales]
,[Measures].[Areadirector]
} ON 0
,[S] ON 1
FROM [YourCube];
第二种方法可能更有效。Filter()可能比@whytheq的NonEmpty()答案慢得多。