Compartir a través de


NonEmpty (MDX)

Devuelve un conjunto de tuplas que no están vacías de un conjunto especificado, según el producto cruzado del conjunto especificado con un segundo conjunto.

Sintaxis

NONEMPTY(set_expression1 [,set_expression2])

Argumentos

  • set_expression1
    Expresión MDX válida que devuelve un conjunto.

  • set_expression2
    Expresión MDX válida que devuelve un conjunto.

Comentarios

Esta función devuelve las tuplas del primer conjunto especificado que no están vacías cuando se evalúan todas las tuplas del segundo conjunto. La función NonEmpty tiene en cuenta los cálculos y conserva las tuplas duplicadas. Si no se proporciona un segundo conjunto, la expresión se evalúa en el contexto de las coordenadas actuales de los miembros de las jerarquías de atributo y las medidas del cubo.

Nota

Utilice esta función en lugar de la función obsoleta NonEmptyCrossjoin (MDX).

Nota importanteImportante

No vacías es una característica de las celdas a las que hacen referencia las tuplas y no de las propias tuplas.

Ejemplos

En la consulta siguiente se muestra un ejemplo simple de NonEmpty, que devuelve todos los clientes que tenían un valor distinto de NULL para Internet Sales Amount a fecha de 1 de julio 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]

El ejemplo siguiente devuelve el conjunto de tuplas que contiene clientes y fechas de compra mediante las funciones Filter y NonEmpty para buscar la última fecha en que cada cliente realizó una 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]