NonEmpty (MDX)
Retourne l'ensemble des tuples qui ne sont pas vides d'un jeu spécifié sur la base du produit croisé du jeu spécifié avec un deuxième jeu.
Syntaxe
NONEMPTY(set_expression1 [,set_expression2])
Arguments
set_expression1
Expression MDX (Multidimensional Expressions) valide qui retourne un jeu.set_expression2
Expression MDX (Multidimensional Expressions) valide qui retourne un jeu.
Notes
Cette fonction retourne dans le premier jeu spécifié les tuples qui ne sont pas vides lorsqu'ils sont évalués dans les tuples du deuxième jeu. La fonction NonEmpty tient compte des calculs et conserve les tuples dupliqués. Si aucun deuxième jeu n'est fourni, l'expression est évaluée dans le contexte des coordonnées actuelles des membres des hiérarchies d'attribut et des mesures du cube.
Notes
Utilisez cette fonction plutôt que la fonction déconseillée NonEmptyCrossjoin (MDX).
Important
La valeur non vide est une caractéristique des cellules référencées par les tuples, et non des tuples eux-mêmes.
Exemples
La requête suivante affiche un exemple simple de NonEmpty, en retournant tous les clients qui avaient une valeur non NULL pour le Montant des ventes sur Internet le 1er juillet 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]
L'exemple ci-dessous retourne l'ensemble des tuples contenant les clients et les dates d'achat par le biais de la fonction Filter et des fonctions NonEmpty afin de rechercher la dernière date à laquelle chaque client a effectué un achat :
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]