RELATED-Funktion (DAX)

Gibt einen verknüpften Wert aus einer anderen Tabelle zurück.

Syntax

RELATED(<column>)

Parameter

Begriff

Definition

column

Die Spalte, die die Werte enthält, die Sie abrufen möchten.

Rückgabewert

Ein einzelner Wert, der sich auf die aktuelle Zeile bezieht.

Hinweise

Die RELATED-Funktion setzt voraus, dass eine Beziehung zwischen der aktuellen Tabelle und der Tabelle mit weiteren Informationen vorhanden ist. Sie geben die Spalte an, die die gewünschten Daten enthält. Die Funktion folgt einer vorhandenen n:1-Beziehung, um den Wert aus der angegebenen Spalte in der verknüpften Tabelle abzurufen.

Wenn keine Beziehung vorhanden ist, müssen Sie eine Beziehung erstellen. Weitere Informationen finden Sie unter Erstellen einer Beziehung zwischen zwei Tabellen.

Wenn die RELATED-Funktion eine Suche ausführt, untersucht sie alle Werte in der angegebenen Tabelle unabhängig von allen Filtern, die eventuell angewendet wurden.

HinweisHinweis

Die RELATED-Funktion benötigt einen Zeilenkontext. Deshalb kann sie nur im berechneten Spaltenausdruck verwendet werden, wo der aktuelle Zeilenkontext unzweideutig ist, oder als geschachtelte Funktion in einem Ausdruck, der eine Tabellensuchfunktion verwendet. Eine Tabellensuchfunktion, z. B. SUMX, ruft den Wert des aktuellen Zeilenwerts ab und sucht dann in einer anderen Tabelle nach Instanzen dieses Werts.

Beispiel

Im folgenden Beispiel wird das Measure "Non USA Internet Sales" (Nicht-USA-Internetverkäufe) erstellt, um einen Verkaufsbericht zu erzeugen, der Verkäufe in den USA ausschließt. Um das Measure zu erstellen, muss die Tabelle "InternetSales_USD" gefiltert werden, um in der Tabelle "SalesTerritory" alle Verkäufe auszuschließen, die in den USA getätigt wurden. Das Land USA erscheint fünfmal in der Tabelle "SalesTerritory"; einmal für jede der folgenden Regionen: Nordwesten, Nordosten, Zentral, Südwesten und Südosten.

Der erste Ansatz zum Erstellen des Measures durch Filtern der Internetverkäufe könnte darin bestehen, einen mit dem folgenden Beispiel vergleichbaren Filterausdruck hinzuzufügen:

FILTER('InternetSales_USD', 'InternetSales_USD'[SalesTerritoryKey]<>1 && 'InternetSales_USD'[SalesTerritoryKey]<>2 && 'InternetSales_USD'[SalesTerritoryKey]<>3 && 'InternetSales_USD'[SalesTerritoryKey]<>4 && 'InternetSales_USD'[SalesTerritoryKey]<>5)

Dieser Ansatz ist jedoch nicht intuitiv, anfällig für Tippfehler und funktioniert ggf. nicht, wenn eine der vorhandenen Regionen in Zukunft geteilt wird.

Ein besserer Ansatz wäre, die vorhandene Beziehung zwischen "InternetSales_USD" und "SalesTerritory" zu verwenden und explizit anzugeben, dass sich das Land von den USA unterscheiden muss. Erstellen Sie dazu einen mit dem folgenden Beispiel vergleichbaren Filterausdruck:

FILTER( 'InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")

Dieser Ausdruck verwendet die RELATED-Funktion, um den Länderwert in der Tabelle "SalesTerritory" zu suchen. Die Suche beginnt beim Wert der Schlüsselspalte "SalesTerritoryKey" in der Tabelle "InternetSales_USD". Das Ergebnis der Suche wird von der Filterfunktion verwendet, um zu bestimmen, ob die Zeile "InternetSales_USD" gefiltert wird oder nicht.

HinweisHinweis

Falls das Beispiel nicht funktioniert, muss ggf. eine Beziehung zwischen den Tabellen hergestellt werden. Weitere Informationen finden Sie unter Beziehungen zwischen Tabellen.

= SUMX(FILTER( 'InternetSales_USD'
            ,  RELATED('SalesTerritory'[SalesTerritoryCountry])
               <>"United States"
             )
     ,'InternetSales_USD'[SalesAmount_USD])

In der folgenden Tabelle werden nur Gesamtergebnisse für die einzelnen Regionen angezeigt, um nachzuweisen, dass der Filterausdruck im Measure "Non USA Internet Sales" erwartungsgemäß funktioniert.

Zeilenbezeichnungen

Internet Sales

Non USA Internet Sales

Australia

$4,999,021.84

$4,999,021.84

Canada

$1,343,109.10

$1,343,109.10

France

$2,490,944.57

$2,490,944.57

Germany

$2,775,195.60

$2,775,195.60

United Kingdom

$5,057,076.55

$5,057,076.55

United States

$9,389,479.79

 

Gesamtergebnis

$26,054,827.45

$16,665,347.67

In der folgenden Tabelle ist der endgültige Bericht dargestellt, der bei Verwendung dieses Measures in einer PivotTable generiert werden könnte:

Non USA Internet Sales

Spaltenbezeichnungen

 

 

 

Zeilenbezeichnungen

Accessories

Bikes

Clothing

Gesamtergebnis

2001

 

$1,526,481.95

 

$1,526,481.95

2002

 

$3,554,744.04

 

$3,554,744.04

2003

$156,480.18

$5,640,106.05

$70,142.77

$5,866,729.00

2004

$228,159.45

$5,386,558.19

$102,675.04

$5,717,392.68

Gesamtergebnis

$384,639.63

$16,107,890.23

$172,817.81

$16,665,347.67