RELATED
gælder for:beregnet kolonneberegnet tabelMeasurevisualiseringsberegning
Returnerer en relatedvalue fra en anden tabel.
Syntaks
RELATED(<column>)
Parametre
Begreb | Definition |
---|---|
column |
Den kolonne, der contains den values, du vil hente. |
Returner value
En enkelt value, der er related til den aktuelle række.
Bemærkninger
Funktionen RELATED kræver, at der findes en relation mellem den aktuelle tabel and tabellen med related oplysninger. Du angiver den kolonne, der contains de ønskede data, and funktionen følger en eksisterende mange til en-relation for at hente value fra den angivne kolonne i tabellen related. If en relation findes not, skal du oprette en relation.
Når funktionen RELATED udfører et opslag, undersøges allvalues i den angivne tabel, uanset hvilke filters der er anvendt.
Funktionen RELATED skal bruge en rækkekontekst. Den kan derfor kun bruges i et beregnet kolonneudtryk, hvor den aktuelle rækkekontekst er entydig, or som en indlejret funktion i et udtryk, der bruger en tabelscanningsfunktion. En tabelscanningsfunktion, f.eks. SUMX, henter value for den aktuelle række valueand scanner derefter en anden tabel for forekomster af den pågældende value.
Funktionen RELATED kan ikke bruges til at hente en kolonne på tværs af en begrænset relation.
Eksempel
I følgende eksempel oprettes measure Internetsalg, der ikke er USA, for at oprette en salgsrapport, der ikke omfatter salg i USA. Hvis du vil oprette measure, skal tabellen InternetSales_USD filtreres for at udelade all salg, der tilhører USA, i tabellen SalesTerritory. USA vises som land 5 gange i tabellen SalesTerritory. én gang for hvert af følgende områder: Nordvest, Nordøst, Central, Sydvest and Sydøst.
Den first tilgang til filter Internet Sales for at oprette measurekan være at tilføje et filter udtryk som følgende:
FILTER('InternetSales_USD'
, 'InternetSales_USD'[SalesTerritoryKey]<>1 && 'InternetSales_USD'[SalesTerritoryKey]<>2 && 'InternetSales_USD'[SalesTerritoryKey]<>3 && 'InternetSales_USD'[SalesTerritoryKey]<>4 && 'InternetSales_USD'[SalesTerritoryKey]<>5)
Denne fremgangsmåde er dog kontraintuitiv, tilbøjelig til at skrive fejl, and kan not arbejde if et af de eksisterende områder opdeles i fremtiden.
En bedre tilgang ville være at bruge den eksisterende relation mellem InternetSales_USD and SalesTerritory and eksplicit angive, at landet skal være forskelligt fra USA. Det gør du ved at oprette et filter udtryk som følgende:
FILTER( 'InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")
I dette udtryk bruges funktionen RELATED til at slå det land op, value i tabellen SalesTerritory, startende med value for nøglekolonnen SalesTerritoryKey i tabellen InternetSales_USD. Resultatet af opslaget bruges af funktionen filter til at bestemmeif den InternetSales_USD række filtreres ornot.
Bemærk
If eksemplet fungerer not, skal du muligvis oprette en relation mellem tabellerne.
= SUMX(FILTER( 'InternetSales_USD'
, RELATED('SalesTerritory'[SalesTerritoryCountry])
<>"United States"
)
,'InternetSales_USD'[SalesAmount_USD])
I følgende tabel vises kun totaler for hvert område for at bevise, at det filter udtryk i measure, internetsalg, der ikke er USA, fungerer efter hensigten.
Row Labels | Internet Sales | Non USA Internet Sales |
---|---|---|
Australien | 4.999.021,84 USD | 4.999.021,84 USD |
Canada | 1.343.109,10 USD | 1.343.109,10 USD |
Frankrig | 2.490.944,57 USD | 2.490.944,57 USD |
Tyskland | 2.775.195,60 USD | 2.775.195,60 USD |
Storbritannien | 5.057.076,55 USD | 5.057.076,55 USD |
USA | 9.389.479,79 USD | |
Samlet total | 26.054.827,45 USD | 16.665.347,67 USD |
Følgende viser, hvad du kan få if du har brugt denne measure i en rapporttabelvisualisering:
Row Labels | Accessories | Bikes | Clothing | Grand Total |
---|---|---|---|---|
2005 | 1.526.481,95 USD | 1.526.481,95 USD | ||
2006 | 3.554.744,04 USD | 3.554.744,04 USD | ||
2007 | 156.480,18 USD | 5.640.106,05 USD | 70.142,77 USD | 5.866.729,00 USD |
2008 | 228.159,45 USD | 5.386.558,19 USD | 102.675,04 USD | 5.717.392,68 USD |
Samlet total | 384.639,63 USD | 16.107.890,23 USD | 172.817,81 USD | 16.665.347,67 USD |