La différence entre SUM et SUMX dans LuckyTemplates

La différence entre SUM et SUMX dans LuckyTemplates

Il y a encore beaucoup de confusion sur la différence entre et dans LuckyTemplates. Il s'agit de connaissances clés que les utilisateurs doivent maîtriser car les deux fonctions peuvent être utilisées dans différents scénarios, mais il existe des cas où l'une est plus efficace que l'autre. Vous pouvez regarder la vidéo complète de ce tutoriel au bas de ce blog.

Je vais me concentrer sur un exemple ici qui montrerait la distinction entre les deux. Mais avant de sauter dans cet exemple, il est important de comprendre la différence entre une fonction d'agrégation et une fonction d'itération.

Table des matières

Agrégateurs Vs Itérateurs

En ce qui concerne DAX, il existe deux types de moteurs de calcul : les agrégateurs et les itérateurs.

Les fonctions d'agrégation incluent SUM , , , et . Les itérateurs, en revanche, sont des fonctions qui se terminent par un X, comme SUMX .

Les fonctions d'itération parcourent chaque ligne d'une table pour ajouter une logique à chacune de ces lignes.

Les fonctions d'agrégation examinent toute la colonne restante après le placement du contexte dans une formule. À partir de là, une seule agrégation est effectuée pour toute la colonne en une seule fois.

SOMME en tant qu'agrégateur

Comment SUM est- il utilisé comme agrégateur ?

La différence entre SUM et SUMX dans LuckyTemplates

Dans cet exemple, je vais calculer le revenu total dans les exemples de données fournis.

Le contexte est toujours important ici. Dans ce cas, chaque date spécifique est le contexte de chaque résultat spécifique.

La différence entre SUM et SUMX dans LuckyTemplates

Si je creuse plus profondément dans cette table, cela montrera qu'il existe une relation directe entre la date et la table Sales .

La différence entre SUM et SUMX dans LuckyTemplates

Ensuite, si je regarde les données qui fonctionnent sous ce modèle, voici comment tout s'emboîte.

La différence entre SUM et SUMX dans LuckyTemplates

La relation est donc liée à la colonne Order Date ici. Une fois les dates spécifiques de cette colonne filtrées, les résultats correspondants sont affichés dans la colonne Chiffre d'affaires.

À partir de là, le SUM ferait juste un gros calcul des résultats filtrés.

SUMX en tant qu'itérateur

Maintenant, je vais utiliser SUMX sur les mêmes exemples de données afin que vous puissiez voir la différence. Je peux en fait calculer ce chiffre d'affaires sans toucher à la colonne Chiffre d'affaires.

Lorsque la fonction SUMX est utilisée, elle demandera toujours une table. Notez qu'une table physique ou une table virtuelle peut être utilisée ici.

La différence entre SUM et SUMX dans LuckyTemplates

Pour trouver le chiffre d'affaires, je vais choisir la table Ventes. Ensuite, je placerai une expression, qui peut être une mesure ou une colonne spécifique de cette table dans cette formule afin qu'elle puisse commencer à exécuter la logique sur chaque ligne. L'expression, comme expliqué ici, renvoie la somme d'une expression évaluée pour chaque ligne de la table.

La différence entre SUM et SUMX dans LuckyTemplates

Étant donné que les exemples de données incluent la quantité de commande, je vais l'utiliser ici pour obtenir le total. Je vais également utiliser le prix unitaire.

La différence entre SUM et SUMX dans LuckyTemplates

Une fois que j'ai fait glisser cette formule dans le rapport, les résultats sont exactement les mêmes.

La différence entre SUM et SUMX dans LuckyTemplates

Bien sûr, ils affichent tous les deux les mêmes résultats car ils dérivent tous les deux des données des deux mêmes colonnes - la quantité de commande et le prix unitaire.

La différence entre SUM et SUMX dans LuckyTemplates

Pourquoi utiliser le SUMX s'il donne de toute façon le même résultat que le SUM ?

Avec le SUMX, la logique est appliquée non seulement à une colonne entière, mais à chaque ligne de cette colonne. En fait, je pourrais supprimer la colonne Revenue et être toujours en mesure de récupérer des résultats spécifiques.

Imaginez donc que la logique soit appliquée à chaque ligne. Il multiplie la quantité de commande et le prix unitaire pour la 1ère ligne puis enregistre cela dans la mémoire. Il fait la même chose pour la 2e rangée et toutes les autres rangées suivantes, en sauvegardant chaque résultat individuel.

Cela signifie qu'à la fin, ce qui est utilisé pour calculer le SUMX, ce ne sont pas les données physiques sur la table, mais les résultats enregistrés dans la mémoire .


Utilisation des fonctions d'itération dans DAX
Utilisation des fonctions d'itération SUMX et AVERAGEX dans LuckyTemplates
Modèle de données LuckyTemplates pour une analyse de scénario avancée à l'aide de DAX

Conclusion

J'espère que j'ai pu expliquer la principale différence entre SUM et SUMX dans LuckyTemplates, en particulier à ceux qui comprennent encore ce que LuckyTemplates peut vraiment faire.

La règle d'or est que s'il s'agit d'un scénario simple et direct qui peut être résolu par une fonction d'agrégation, utilisez SUM. Mais si une logique plus avancée est requise, utilisez SUMX.

SUMX sera également utile dans les cas où vous avez des milliers à des millions de lignes. Tant que les tables et les colonnes référencées dans vos mesures sont là, l'utilisation de fonctions d'itération rendrait le processus plus efficace.

Tous mes vœux,


Quest-ce que le self en Python ? Exemples concrets

Quest-ce que le self en Python ? Exemples concrets

Qu'est-ce que le self en Python ? Exemples concrets

Comment enregistrer et charger un fichier RDS dans R

Comment enregistrer et charger un fichier RDS dans R

Vous apprendrez à enregistrer et à charger des objets à partir d'un fichier .rds dans R. Ce blog expliquera également comment importer des objets de R vers LuckyTemplates.

First N Business Days Revisited - Une solution de langage de codage DAX

First N Business Days Revisited - Une solution de langage de codage DAX

Dans ce didacticiel sur le langage de codage DAX, découvrez comment utiliser la fonction GENERATE et comment modifier dynamiquement le titre d'une mesure.

Présentez des informations à laide de la technique des visuels dynamiques multi-threads dans LuckyTemplates

Présentez des informations à laide de la technique des visuels dynamiques multi-threads dans LuckyTemplates

Ce didacticiel explique comment utiliser la technique Multi Threaded Dynamic Visuals pour créer des informations à partir de visualisations de données dynamiques dans vos rapports.

Introduction au filtrage du contexte dans LuckyTemplates

Introduction au filtrage du contexte dans LuckyTemplates

Dans cet article, je vais parcourir le contexte du filtre. Le contexte de filtrage est l'un des principaux sujets que tout utilisateur de LuckyTemplates doit d'abord connaître.

Meilleurs conseils pour utiliser les applications dans le service en ligne LuckyTemplates

Meilleurs conseils pour utiliser les applications dans le service en ligne LuckyTemplates

Je souhaite montrer comment le service en ligne LuckyTemplates Apps peut aider à gérer différents rapports et informations générés à partir de diverses sources.

Analyser les changements de marge bénéficiaire au fil du temps - Analytics avec LuckyTemplates et DAX

Analyser les changements de marge bénéficiaire au fil du temps - Analytics avec LuckyTemplates et DAX

Découvrez comment calculer les modifications de votre marge bénéficiaire à l'aide de techniques telles que la création de branches de mesure et la combinaison de formules DAX dans LuckyTemplates.

Idées de matérialisation pour les caches de données dans DAX Studio

Idées de matérialisation pour les caches de données dans DAX Studio

Ce didacticiel abordera les idées de matérialisation des caches de données et comment elles affectent les performances des DAX dans la fourniture de résultats.

Rapports dentreprise à laide de LuckyTemplates

Rapports dentreprise à laide de LuckyTemplates

Si vous utilisez encore Excel jusqu'à présent, c'est le meilleur moment pour commencer à utiliser LuckyTemplates pour vos besoins en matière de rapports commerciaux.

Quest-ce que la passerelle LuckyTemplates ? Tout ce que tu as besoin de savoir

Quest-ce que la passerelle LuckyTemplates ? Tout ce que tu as besoin de savoir

Qu'est-ce que la passerelle LuckyTemplates ? Tout ce que tu as besoin de savoir