Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Retourne une valeur associée d'une autre table.
Syntaxe
RELATED(<column>)
Paramètres
Terme |
Définition |
|---|---|
column |
Colonne qui contient les valeurs que vous souhaitez récupérer. |
Valeur de retour
Valeur unique qui est associée à la ligne actuelle.
Notes
La fonction RELATED requiert l'existence d'une relation entre la table actuelle et la table avec les informations connexes. Vous spécifiez la colonne qui contient les données voulues et la fonction suit une relation plusieurs-à-un existante pour extraire la valeur de la colonne spécifiée dans la table associée.
S'il n'existe aucune relation, vous devez en créer une. Pour plus d'informations, consultez Créer une relation entre deux tables.
Lorsque la fonction RELATED effectue une recherche, elle examine toutes les valeurs dans la table spécifiée indépendamment des filtres qui ont pu être appliqués.
[!REMARQUE]
La fonction RELATED a besoin d'un contexte de ligne ; par conséquent, elle peut être utilisée uniquement dans une expression de colonne calculée, où le contexte de ligne actuel est non équivoque, ou comme une fonction imbriquée dans une expression qui utilise une fonction d'analyse de table. Une fonction d'analyse de table, telle que SUMX, obtient la valeur de la ligne actuelle, puis analyse une autre table pour les instances de cette valeur.
Exemple
Dans l'exemple suivant, la mesure Non USA Internet Sales (ventes sur Internet hors des États-Unis) est créée pour produire un état des ventes qui exclut les ventes aux États-Unis. Pour créer la mesure, la table InternetSales_USD doit être filtrée pour exclure toutes les ventes qui appartiennent aux États-Unis dans la table SalesTerritory. Les États-Unis, en tant que pays, apparaissent 5 fois dans la table SalesTerritory ; une fois pour chacune des régions suivantes : Nord-Ouest, Nord-Est, Centre, Sud-Ouest et Sud-Est.
La première approche pour filtrer les ventes sur Internet, afin de créer la mesure, peut être d'ajouter une expression de filtre telle que la suivante :
FILTER('InternetSales_USD', 'InternetSales_USD'[SalesTerritoryKey]<>1 && 'InternetSales_USD'[SalesTerritoryKey]<>2 && 'InternetSales_USD'[SalesTerritoryKey]<>3 && 'InternetSales_USD'[SalesTerritoryKey]<>4 && 'InternetSales_USD'[SalesTerritoryKey]<>5)
Toutefois, cette approche est non intuitive, propice aux erreurs de frappe et risque de ne pas fonctionner si l'une des régions existantes est divisée dans le futur.
Une meilleure approche consiste à utiliser la relation existante entre InternetSales_USD et SalesTerritory et à déclarer explicitement que le pays ne doit pas être les États-Unis. Pour cela, créez une expression de filtre comme celle-ci :
FILTER( 'InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")
Cette expression utilise la fonction RELATED pour rechercher la valeur du pays dans la table SalesTerritory, en commençant par la valeur de la colonne clé, SalesTerritoryKey, de la table InternetSales_USD. Le résultat de la recherche est utilisé par la fonction de filtre pour déterminer si la ligne InternetSales_USD est filtrée ou non.
[!REMARQUE]
Si l'exemple ne fonctionne pas, vous devrez peut-être créer une relation entre les tables. Pour plus d'informations, consultez Relations entre tables.
= SUMX(FILTER( 'InternetSales_USD'
, RELATED('SalesTerritory'[SalesTerritoryCountry])
<>"United States"
)
,'InternetSales_USD'[SalesAmount_USD])
Le tableau suivant n'indique que les totaux de chaque région, pour prouver que l'expression de filtre de la mesure, Non USA Internet Sales, fonctionne comme prévu.
Étiquettes de ligne |
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 |
|
Total général |
$26,054,827.45 |
$16,665,347.67 |
Le tableau suivant représente le rapport final que vous pouvez obtenir en utilisant cette mesure dans un tableau croisé dynamique :
Non USA Internet Sales |
Étiquettes de colonne |
|
|
|
|---|---|---|---|---|
Étiquettes de ligne |
Accessories |
Bikes |
Clothing |
Total général |
2005 |
|
$1,526,481.95 |
|
$1,526,481.95 |
2006 |
|
$3,554,744.04 |
|
$3,554,744.04 |
2007 |
$156,480.18 |
$5,640,106.05 |
$70,142.77 |
$5,866,729.00 |
2008 |
$228,159.45 |
$5,386,558.19 |
$102,675.04 |
$5,717,392.68 |
Total général |
$384,639.63 |
$16,107,890.23 |
$172,817.81 |
$16,665,347.67 |