我需要在性能点仪表板中创建一个过滤器以仅获取非空值。我正在尝试编写一个 MDX 查询来选择值
SELECT NONEMPTY{[H School ].[Dist Name], [H School ].[School Name]}
FROM [Early Cube ]
但它没有过滤数据
您需要根据某种措施检查非空单元格。换句话说,对于“某个集合”(例如度量),维度成员需要为空或非空。有两种方法可以执行此操作,具体取决于您是否希望在结果中显示测量结果。
SELECT 中的 NON EMPTY 子句:
它显示从一个测量值之间的交集获得的单元格 轴和另一个轴上的维度成员,从而消除
(null)
值。
SELECT
/*Measures*/
{[Measures].[Customer Count]} ON 0,
/*NON EMPTY clause against Dimension members*/
NON EMPTY {[Customer].[Customer Geography].[City]} ON 1
FROM [Adventure Works];
根据指定集合与第二个集合的叉积,返回指定集合中不为空的元组集合。
SELECT
{} ON 0,
/*NONEMPTY() FUNCTION*/
NONEMPTY([Customer].[Customer Geography].[City], [Measures].[Customer Count]) ON 1
FROM [Adventure Works]
在查询中:
SELECT NONEMPTY([H School ].[Dist Name], [H School ].[School Name])
FROM [Early Cube ]
你可以将其重写为:
SELECT NONEMPTY([H School ].[Dist Name]*[H School ].[School Name], <<add your measure/context here if you do not want to use the default measure>>)
FROM [Early Cube ]