Partager via


DrillupMember (MDX)

Retourne les membres figurant dans un jeu spécifié qui ne sont pas les descendants des membres figurant dans un second jeu spécifié.

Syntaxe

  
DrillupMember(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.

Remarques

La fonction DrillupMember retourne un ensemble de membres en fonction des membres spécifiés dans le premier jeu qui sont les descendants des membres du deuxième ensemble. Le premier jeu peut avoir n'importe quelle dimensionnalité mais le deuxième jeu doit contenir un jeu unidimensionnel. L'ordre des membres d'origine dans le premier jeu est conservé. La fonction construit le jeu en incluant uniquement les membres du premier jeu qui sont des descendants immédiats des membres du deuxième jeu. Si l'ancêtre immédiat d'un membre du premier jeu n'est pas présent dans le deuxième jeu, le membre du premier jeu est inclus dans le jeu retourné par cette fonction. Les descendants dans le premier jeu qui précèdent un membre ancêtre du deuxième jeu sont également inclus.

Le premier jeu peut contenir des tuples au lieu de membres. L’exploration Tuple est une extension d’OLE DB et retourne un ensemble de tuples au lieu de membres.

Important

Un membre fait l'objet d'une exploration vers le haut uniquement s'il est aussitôt suivi d'un enfant ou d'un descendant. L'ordre des membres dans le jeu importe autant pour les familles de fonctions Drilldown* et Drillup*. Envisagez d’utiliser la fonction Hierarchize pour classer correctement les membres du premier ensemble.

Exemple

Les trois exemples suivants sont identiques, à l'exception du deuxième jeu. Dans le premier exemple, le deuxième jeu contient le membre United States. Par conséquent, le membre Colorado est exclu du jeu de résultats. C'est un descendant du membre United States.

SELECT DrillUpMember (   
  { [Geography].[Geography].[Country].[Canada]   
   ,[Geography].[Geography].[Country].[United States]   
   ,[Geography].[Geography].[State-Province].[Colorado]   
   ,[Geography].[Geography].[State-Province].[Alberta]   
   ,[Geography].[Geography].[State-Province].[Brunswick]    
 }   
 , {[Geography].[Geography].[Country].[United States]}   
 ) ON 0   
FROM [Adventure Works]  

Le deuxième exemple illustre l'importance de l'ordre dans lequel les membres sont placés. Étant donné que DrillupMember ne s’intéresse qu’aux membres qui sont suivis immédiatement par les descendants du premier jeu, il ne s’intéresse pas au membre Canada. Le membre Canada est séparé de ses descendants par les membres United States et Colorado. Si vous réorganisez les membres afin que le membre Canada soit situé juste au-dessus du membre Alberta, les membres Alberta et Brunswick sont exclus de l'ensemble de lignes.

SELECT DrillUpMember (   
 {  [Geography].[Geography].[Country].[Canada]   
   ,[Geography].[Geography].[Country].[United States]   
   ,[Geography].[Geography].[State-Province].[Colorado]   
   ,[Geography].[Geography].[State-Province].[Alberta]   
   ,[Geography].[Geography].[State-Province].[Brunswick]    
 }   
 , {[Geography].[Geography].[Country].[Canada]}   
 )   
ON 0   
FROM [Adventure Works]  

L’exemple 3 montre comment l’utilisation de Hierarchize peut atténuer les effets de l’ordre des membres et permet d’explorer le membre du Canada.

SELECT DrillUpMember (   
 Hierarchize   
  (   
   { [Geography].[Geography].[Country].[Canada]   
    ,[Geography].[Geography].[Country].[United States]   
    ,[Geography].[Geography].[State-Province].[Colorado]   
    ,[Geography].[Geography].[State-Province].[Alberta]   
    ,[Geography].[Geography].[State-Province].[Brunswick]    
   }   
  ), {[Geography].[Geography].[Country].[Canada]}   
 )   
ON 0   
FROM [Adventure Works]  
  

Voir aussi

Guide de référence des fonctions MDX (MDX)