Udostępnij za pośrednictwem


RELATED

Dotyczy:kolumna obliczeniowatabela obliczeniowaMeasureobliczenia wizualne

Zwraca relatedvalue z innej tabeli.

Składnia

RELATED(<column>)

Parametry

Termin Definicja
column Kolumna, która containsvalues, którą chcesz pobrać.

Zwracanie value

Pojedynczy value, który jest related do bieżącego wiersza.

Uwagi

  • Funkcja RELATED wymaga, aby relacja między bieżącą tabelą and tabeli z informacjami related. Należy określić kolumnę, która contains żądanych danych, and funkcja jest zgodna z istniejącą relacją wiele-do-jednego, aby pobrać value z określonej kolumny w tabeli related. If relacja not istnieje, należy utworzyć relację.

  • Gdy funkcja RELATED wykonuje wyszukiwanie, sprawdza allvalues w określonej tabeli niezależnie od filters, które mogły zostać zastosowane.

  • Funkcja RELATED wymaga kontekstu wiersza; Dlatego można go używać tylko w wyrażeniu kolumny obliczeniowej, gdzie bieżący kontekst wiersza jest jednoznaczny, or jako zagnieżdżona funkcja w wyrażeniu używającym funkcji skanowania tabeli. Funkcja skanowania tabel, taka jak SUMX, pobiera value bieżącego wiersza valueand następnie skanuje inną tabelę dla wystąpień tego value.

  • Funkcji RELATED nie można użyć do pobrania kolumny w ograniczonej relacji.

Przykład

W poniższym przykładzie zostanie utworzona measure Sprzedaż internetowa w Stanach Zjednoczonych w celu utworzenia raportu sprzedaży, który nie obejmuje sprzedaży w Stanach Zjednoczonych. Aby utworzyć measure, należy przefiltrować tabelę InternetSales_USD, aby wykluczyć sprzedaż all należącą do Stanów Zjednoczonych w tabeli SalesTerritory. Stany Zjednoczone, jako kraj, są wyświetlane 5 razy w tabeli SalesTerritory; raz dla każdego z następujących regionów: Północno-zachodni, Północno-Wschodni, Środkowy, Południowo-Zachodni, and Południowo-Wschodni.

Podejście first do filter sprzedaży internetowej w celu utworzenia measuremoże być dodanie wyrażenia filter, takiego jak następujące:

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

Jednak takie podejście jest sprzeczne, podatne na błędy wpisywania, and może not pracy, if którykolwiek z istniejących regionów zostanie podzielony w przyszłości.

Lepszym rozwiązaniem byłoby użycie istniejącej relacji między InternetSales_USD and SalesTerritory and jawnie stwierdzić, że kraj musi być inny niż Stany Zjednoczone. W tym celu utwórz wyrażenie filter podobne do następującego:

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

To wyrażenie używa funkcji RELATED do wyszukiwania kraju value w tabeli SalesTerritory, począwszy od value kolumny klucza SalesTerritoryKey w tabeli InternetSales_USD. Wynik wyszukiwania jest używany przez funkcję filter w celu określenia, if wiersz InternetSales_USD jest filtrowany ornot.

Uwaga

If przykład działa not, może być konieczne utworzenie relacji między tabelami.

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

W poniższej tabeli przedstawiono tylko sumy dla każdego regionu, aby udowodnić, że wyrażenie filter w measure, Sprzedaż internetowa w Stanach Zjednoczonych działa zgodnie z oczekiwaniami.

Row Labels Internet Sales Non USA Internet Sales
Australia 4999 021,84 USD 4999 021,84 USD
Kanada $1,343,109.10 $1,343,109.10
Francja $2,490,944,57 $2,490,944,57
Niemcy $2,775,195.60 $2,775,195.60
Zjednoczone Królestwo 5 057 076,55 USD 5 057 076,55 USD
Stany Zjednoczone $9,389,479,79
Suma końcowa 26 054 827,45 USD 16 665 347,67 USD

Poniżej przedstawiono, co można uzyskać if użyto tej measure w wizualizacji tabeli raportów:

Row Labels Accessories Bikes Clothing Grand Total
2005 1526 481,95 USD 1526 481,95 USD
2006 3554 744,04 USD 3554 744,04 USD
2007 156 480,18 USD $5,640,106.05 70 142,77 USD $5,866,729.00
2008 228 159,45 USD $5,386,558.19 102 675,04 USD 5717 392,68 USD
Suma końcowa 384 639,633 USD 16 107 890,23 USD 172 817,811 USD 16 665 347,67 USD

funkcji