DrillupMember (MDX)

Vrací členy v určené množině, kteří nejsou potomky členů druhé určené množiny.

Syntax

  
DrillupMember(Set_Expression1, Set_Expression2)   

Arguments

Set_Expression1
Platný výraz Multidimensional Expressions (MDX), který vrací množinu.

Set_Expression2
Platný výraz Multidimensional Expressions (MDX), který vrací množinu.

Remarks

Funkce DrillupMember vrací množinu členů založených na členech specifikovaných v první sadě, kteří jsou potomky členů z druhé sady. První množina může mít libovolnou dimenzionalitu, ale druhá musí obsahovat jednorozměrnou množinu. Mezi původními členy v první sadě je zachován řád. Funkce konstruuje množinu tak, že zahrnuje pouze ty členy první množiny, kteří jsou bezprostředními potomky členů druhé množiny. Pokud bezprostřední předek člena v první množině není přítomen ve druhé sadě, člen první množiny je zahrnut do množiny vrácené touto funkcí. Jsou také zahrnuti potomci v první sadě, kteří předcházejí členovi předků ve druhé sadě.

První množina může obsahovat n-tice místo členů. Drilldown n-tic je rozšířením OLE DB a vrací sadu n-tic místo členů.

Important

Člen bude vycvičen pouze tehdy, pokud ho ihned následuje dítě nebo potomek. Pořadí členů v sadě je důležité jak pro rodiny funkcí Drilldown*, tak Drillup*. Zvažte použití funkce Hierarchize k vhodnému uspořádání členů první množiny.

Example

Následující tři příklady jsou totožné kromě druhé sady. V prvním příkladu je druhou sadou USA. Výsledkem je, že Colorado je z výsledků vyloučeno. Je potomkem USA.

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]  

Druhý příklad nám ukazuje důležitost pořadí členů. Protože DrillupMember se zaměřuje pouze na ty členy, které jsou bezprostředně následováni potomky v první sadě, nezaměřuje se na člena z Kanady. Kanada je od svých potomků oddělena USA a Coloradem. Pokud přeuspořádáte členy tak, aby Kanada byla přímo nad Albertou, pak jsou Alberta i Brunswick z řady vyloučeny.

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]  

Třetí příklad ukazuje, jak použití hierarchize může zmírnit dopady řádu členů a zaměřuje se na člena Kanady.

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]