DAX – DISTINCTCOUNT()


La fonction DISTINCTCOUNT() prend une colonne de table en entrée, crée une table virtuelle des valeurs uniques (supprime les doublons), puis compte les lignes de cette table virtuelle avant de retourner la valeur.

 

Par exemple la mesure :

Distinct = DISTINCTCOUNT(‘Gd livre'[Compte])

Retournera le nombre de comptes présents dans la table ‘Gd livre’, en fonction du contexte.

Comme prévu, la mesure réagit au contexte du tableau, et retourne le nombre de comptes utilisés selon les mois.

 

Cette fonction peut aussi être utilisée en prenant deux tables liées comme paramètres.

Par exemple, si nous souhaitons calculer le nombre de catégories de produits mouvementées dans nos stocks, par périodes, nous pouvons créer la mesure suivante :

TotalCategoriesMouvementées = CALCULATE(

                                                              DISTINCTCOUNT(Produits[Catégorie]

                                                              );’Mouvements de stock’

                                                             )

Le fait d’inclure DISTINCTCOUNT() dans une fonction CALCULATE() nous permet d’utiliser la table ‘Mouvements de stocks’ comme filtre de la table mono-colonne Produits[Catégorie] .

Le tableau retourne pour chaque jour, le nombre de catégories de produits mouvementés dans les stocks.

 

Si nous ne voulions calculer que les catégories sorties du stock, il nous suffirait de modifier le second paramètre de la fonction, en filtrant la table ‘Mouvements de stock’.

TotalCategoriesMouvementées =

   CALCULATE(

    DISTINCTCOUNT(

      Produits[Catégorie]

    );

    FILTER(‘Mouvements de stock’;’Mouvements stock'[Mouvement ]= »S »

    )

   )

 

Laissez un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *