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,


Gestion des erreurs dans Power Automate via le branchement parallèle

Gestion des erreurs dans Power Automate via le branchement parallèle

Découvrez l

Comparaison de tables dans Power Query | Tutoriel LuckyTemplates

Comparaison de tables dans Power Query | Tutoriel LuckyTemplates

Découvrez comment comparer facilement des tables dans Power Query pour signaler les différences et optimiser vos analyses de données.

Colonne fractionnée LuckyTemplates par délimiteurs dans DAX

Colonne fractionnée LuckyTemplates par délimiteurs dans DAX

Dans ce blog, vous découvrirez comment diviser les colonnes dans LuckyTemplates par délimiteurs à l'aide de DAX, une méthode efficace pour gérer des modèles de données complexes.

SELECTEDVALUE DAX Exemple - Sélection de trancheuse de récolte

SELECTEDVALUE DAX Exemple - Sélection de trancheuse de récolte

Découvrez comment récolter une valeur avec SELECTEDVALUE DAX pour des calculs dynamiques dans LuckyTemplates.

Calculer la marge en pourcentage dans LuckyTemplates à laide de DAX

Calculer la marge en pourcentage dans LuckyTemplates à laide de DAX

Calculez la marge en pourcentage à l

Modifier les formats de date à laide de léditeur Power Query

Modifier les formats de date à laide de léditeur Power Query

Dans ce didacticiel, nous allons explorer une méthode rapide pour convertir du texte en formats de date à l

Enregistrer la pièce jointe dun e-mail sur SharePoint avec Power Automate

Enregistrer la pièce jointe dun e-mail sur SharePoint avec Power Automate

Dans ce blog, vous apprendrez à enregistrer automatiquement la pièce jointe d

Comment adapter les cellules Excel au texte : 4 solutions simples

Comment adapter les cellules Excel au texte : 4 solutions simples

Découvrez comment adapter les cellules Excel au texte avec ces 4 solutions simples pour améliorer la présentation de vos données.

Générateur de rapports SSRS : formater les en-têtes dans un rapport paginé

Générateur de rapports SSRS : formater les en-têtes dans un rapport paginé

Dans ce didacticiel SSRS Report Builder, découvrez comment utiliser le générateur d

Thème de couleur dans les rapports LuckyTemplates - Conseils et techniques

Thème de couleur dans les rapports LuckyTemplates - Conseils et techniques

Découvrez les outils pour créer un thème de couleur efficace pour vos rapports LuckyTemplates et améliorer leur apparence.