NonEmpty (MDX)
Restituisce il set delle tuple non vuote da un set specificato, in base al prodotto incrociato tra il set specificato e un secondo set.
Sintassi
NONEMPTY(set_expression1 [,set_expression2])
Argomenti
set_expression1
Espressione MDX (Multidimensional Expression) valida che restituisce un set.set_expression2
Espressione MDX (Multidimensional Expression) valida che restituisce un set.
Osservazioni
Questa funzione restituisce le tuple del primo set specificato che risultano non vuote quando vengono valutate sulle tuple del secondo set. La funzione NonEmpty tiene conto dei calcoli e mantiene le tuple duplicate. Se non viene specificato un secondo set, l'espressione viene valutata nel contesto delle coordinate correnti dei membri delle gerarchie degli attributi e delle misure del cubo.
[!NOTA]
Utilizzare questa funzione anziché la funzione deprecata NonEmptyCrossjoin (MDX).
Importante |
---|
Non sono le tuple a essere non vuote, bensì le celle a cui fanno riferimento le tuple. |
Esempi
Nella query seguente viene illustrato un esempio semplice di NonEmpty, che restituisce tutti i clienti che hanno un valore diverso da Null in Internet Sales Amount alla data 1 luglio 2001:
SELECT [Measures].[Internet Sales Amount] ON 0,
NONEMPTY(
[Customer].[Customer].[Customer].MEMBERS
, {([Date].[Calendar].[Date].&[20010701], [Measures].[Internet Sales Amount])}
)
ON 1
FROM [Adventure Works]
Nell'esempio seguente viene restituito il set di tuple contenente i clienti e le date di acquisto, utilizzando le funzioni Filter e NonEmpty per individuare l'ultima data in cui ogni cliente ha eseguito un acquisto:
WITH SET MYROWS AS FILTER
(NONEMPTY
([Customer].[Customer Geography].[Customer].MEMBERS
* [Date].[Date].[Date].MEMBERS
, [Measures].[Internet Sales Amount]
) AS MYSET
, NOT(MYSET.CURRENT.ITEM(0)
IS MYSET.ITEM(RANK(MYSET.CURRENT, MYSET)).ITEM(0))
)
SELECT [Measures].[Internet Sales Amount] ON 0,
MYROWS ON 1
FROM [Adventure Works]