DrillupMember (MDX)

Gibt die Mitglieder einer bestimmten Menge zurück, die keine Nachkommen von Mitgliedern einer zweiten Menge sind.

Syntax

  
DrillupMember(Set_Expression1, Set_Expression2)   

Argumente

Set_Expression1
Ein gültiger Multidimensional Expressions (MDX)-Ausdruck, der eine Menge zurückgibt.

Set_Expression2
Ein gültiger Multidimensional Expressions (MDX)-Ausdruck, der eine Menge zurückgibt.

Bemerkungen

Die Funktion DrillupMember gibt eine Menge von Mitgliedern zurück, die auf den in der ersten Menge angegebenen Elementen basieren, die Nachkommen der Mitglieder der zweiten Menge sind. Die erste Menge kann jede Dimensionalität haben, aber die zweite Menge muss eine eindimensionale Menge enthalten. Die Ordnung unter den ursprünglichen Mitgliedern in der ersten Gruppe bleibt erhalten. Die Funktion konstruiert die Menge, indem sie nur jene Mitglieder der ersten Menge einschließt, die unmittelbare Nachkommen der Mitglieder der zweiten Menge sind. Wenn der unmittelbare Vorfahre eines Mitglieds in der ersten Menge nicht in der zweiten Menge vorhanden ist, wird das Mitglied der ersten Menge in die durch diese Funktion zurückgegebene Menge einbezogen. Nachkommen der ersten Gruppe, die einem Vorfahren der zweiten Gruppe vorausgehen, sind ebenfalls enthalten.

Die erste Menge kann Tupel anstelle von Mitgliedern enthalten. Tupel-Drilldown ist eine Erweiterung von OLE DB und liefert eine Menge von Tupeln statt von Mitgliedern zurück.

Important

Ein Mitglied wird nur dann gebohrt, wenn ihm unmittelbar ein Kind oder ein Nachkomme folgt. Die Reihenfolge der Mitglieder im Set ist sowohl für die Drilldown*- als auch die Drillup*-Funktionsfamilien von Bedeutung. Erwägen Sie, die Hierarchize-Funktion zu verwenden, um die Mitglieder der ersten Menge angemessen zu ordnen.

Example

Die folgenden drei Beispiele sind identisch, mit Ausnahme der zweiten Menge. Im ersten Beispiel ist die zweite Menge die USA. Infolgedessen wird Colorado aus der Ergebnismenge ausgeschlossen. Er ist ein Nachfahre der 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]  

Beispiel zwei zeigt uns die Bedeutung der Mitgliederreihenfolge. Da DrillupMember nur auf jene Mitglieder bohrt, denen im ersten Set unmittelbar Nachkommen folgen, bohrt es nicht auf das kanadische Mitglied nach oben. Kanada ist von seinen Nachkommen durch die USA und Colorado getrennt. Wenn man die Mitglieder so umordnet, dass Kanada direkt über Alberta liegt, sind sowohl Alberta als auch Brunswick aus dem Reihenset ausgeschlossen.

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]  

Beispiel drei zeigt, wie der Einsatz von Hierarchize die Auswirkungen der Mitgliederreihenfolge abmildern kann, und übt sich auf das kanadische Mitglied ein.

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]