NonEmpty (MDX)

Retorna o conjunto de tuplas que não estão vazias de um conjunto especificado, baseado no produto vetorial do conjunto especificado com um segundo conjunto.

Sintaxe

  
NONEMPTY(set_expression1 [,set_expression2])  

Argumentos

set_expression1
Uma expressão válida de Expressões Multidimensionais (MDX) que retorna um conjunto.

set_expression2
Uma expressão válida de Expressões Multidimensionais (MDX) que retorna um conjunto.

Remarks

Essa função retorna as tuplas no primeiro conjunto especificado que não são vazias quando avaliadas entre as tuplas do segundo conjunto. A função Não Vazia leva em conta cálculos e preserva tuplas duplicadas. Se um segundo conjunto não for fornecido, a expressão é avaliada no contexto das coordenadas atuais dos membros das hierarquias de atributos e das medidas no cubo.

Note

Use essa função em vez da função NonEmptyCrossjoin ( MDX) obsoleta.

Importante

Não vazio é uma característica das células referenciadas pelas tuplas, não das tuplas em si.

Exemplos

A consulta a seguir mostra um exemplo simples de NonEmpty, retornando todos os Clientes que tinham valor não-nulo para o Valor das Vendas pela Internet em 1º de julho de 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]  

O exemplo a seguir retorna o conjunto de tuplas contendo clientes e datas de compra, usando a função Filter e as funções NonEmpty para encontrar a última data em que cada cliente fez uma compra:

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]