DAX und Datenmodelle
SUM vs. SUMX in Power BI: Was ist der Unterschied?
SUM addiert eine Spalte. SUMX berechnet einen Ausdruck zeilenweise und addiert dann. Wann sie abweichen und wann SUMX mehr kostet.
Sajagan Thirugnanam
·
Aktualisiert
SUM addiert die Werte einer Spalte. SUMX nimmt eine Tabelle und einen Ausdruck, berechnet den Ausdruck einmal für jede Zeile der Tabelle und addiert dann die Ergebnisse. Nutzen Sie SUM, wenn die gesuchte Zahl schon in einer Spalte steht, und SUMX, wenn jede Zeile zuerst eine eigene Berechnung braucht, etwa Menge mal Preis.
Beides sind DAX-Funktionen, und beide liefern eine einzelne Zahl, die die Filter im Visual berücksichtigt.
Was sind SUM und SUMX in Power BI?
Den Unterschied sieht man am besten, wenn man für beide denselben Datensatz nutzt. Die Beispiele unten verwenden eine Tabelle namens score mit einer Zeile pro Kunde und Spalten wie Health Score und CSM Sentiment.

Tabellenansicht der Tabelle score, die in den Beispielen verwendet wird.
Die Funktion SUM erklärt
SUM nimmt genau eine Spalte und liefert die Summe ihrer Zahlen im aktuellen Filterkontext.
SUM ( <column>So addieren Sie die Spalte Health Score:
Total Health Score = SUM ( score[Health Score] )![Formelleiste von Power BI Desktop mit dem Measure Total Health Score = sum(score[Health Score]) und darunter ein Gauge-Visual, das 2M zeigt](https://framerusercontent.com/images/MW2uJPBt1cftKh1MdLh9YnyZ6Ks.png)
Das Measure Total Health Score in der Formelleiste, dargestellt in einem Gauge-Visual.
SUM kann keinen Ausdruck verarbeiten. SUM ( score[Health Score] - score[CSM Sentiment] ) ist ein Fehler, weil das Argument ein Spaltenverweis sein muss.
Die Funktion SUMX erklärt
SUMX ist ein Iterator. Die Funktion geht eine Tabelle Zeile für Zeile durch, wertet für jede Zeile einen Ausdruck aus und addiert die Ergebnisse.
SUMX ( <table>, <expression>So addieren Sie die Differenz zwischen Health Score und CSM Sentiment, hier Net Score genannt:
Net Score = SUMX ( score, score[Health Score] - score[CSM Sentiment] )![Formelleiste von Power BI Desktop mit dem Measure Net Score = sumx(score, score[Health Score]-score[CSM Sentiment]) und darunter ein Gauge-Visual, das 112K zeigt](https://framerusercontent.com/images/c4KYD3L6dNgg6ASbAicM05w9cb8.png)
Das Measure Net Score mit SUMX, dargestellt im selben Gauge-Visual.
Für jede Zeile zieht SUMX den CSM Sentiment vom Health Score ab und addiert dann alle Zeilenergebnisse. Mit Beispielwerten sieht der Schritt pro Zeile so aus:
Health Score | CSM Sentiment | Net Score pro Zeile |
|---|---|---|
70 | 55 | 15 |
70 | 50 | 20 |
65 | 50 | 15 |
60 | 35 | 25 |
SUMX liefert 75, die Summe der letzten Spalte.
Wann SUM und SUMX dasselbe Ergebnis liefern
Bei Plus oder Minus brauchen Sie SUMX nicht. Die Summe der Differenzen pro Zeile ergibt dasselbe wie die Differenz der beiden Spaltensummen:
Net Score SUM = SUM ( score[Health Score] ) - SUM ( score[CSM Sentiment] )Bei den vier Zeilen oben ist das 265 minus 190, also ebenfalls 75.
Wann nur SUMX das richtige Ergebnis liefert
Die Ergebnisse gehen auseinander, sobald die Zeilenberechnung multipliziert oder dividiert. Nehmen Sie eine Tabelle Sales mit Quantity und Unit Price:
Bestellung | Menge | Stückpreis | Umsatz pro Zeile |
|---|---|---|---|
A | 1 | 100 | 100 |
B | 10 | 5 | 50 |
Der Umsatz ist 150. Das richtige Measure lautet:
Revenue = SUMX ( Sales, Sales[Quantity] * Sales[Unit Price] )Multipliziert man stattdessen die beiden Summen, ergibt das 11 mal 105, also 1.155:
Revenue Wrong = SUM ( Sales[Quantity] ) * SUM ( Sales[Unit Price] )Für genau diesen Fall gibt es SUMX. Die Alternative ist eine Spalte Revenue, die pro Zeile berechnet wird. Der Beitrag Measures vs. berechnete Spalten vergleicht beide Wege.
Best Practices für die Funktion SUMX
SUMX nicht überstrapazieren
Steht der Wert schon in einer Spalte, nutzen Sie SUM. SUMX ( Sales, Sales[Amount] ) liefert dasselbe Ergebnis wie SUM ( Sales[Amount] ) und ist schwerer zu lesen.
SUMX ist nicht an sich langsam. Ein einfacher Ausdruck über Spalten einer Tabelle, etwa Menge mal Stückpreis, wird von der Engine effizient verarbeitet. Teuer wird es, wenn der Ausdruck pro Zeile viel Arbeit leistet, zum Beispiel ein Measure aufruft, IF-Logik nutzt oder Werte in anderen Tabellen nachschlägt, und das über Millionen Zeilen.
Tipps für bessere Performance mit SUMX
Iterieren Sie über die kleinste Tabelle, die die Frage beantwortet.
SUMX ( VALUES ( Customer[CustomerKey] ), ... )geht Kunden durch, nicht jede Verkaufszeile.Halten Sie den Zeilenausdruck möglichst bei einfacher Spaltenarithmetik.
Speichern Sie wiederholte Ergebnisse in Variablen, damit sie nur einmal berechnet werden.
Der Leitfaden zur DAX-Performance zeigt, wie Sie messen, ob ein SUMX-Measure das langsame ist.
Was bringt das bei anderen DAX-Funktionen?
SUMX gehört zu einer Familie von Iteratoren. Die meisten gängigen Aggregationen haben eine X-Version, die eine Tabelle und einen Ausdruck nimmt:
Aggregator | Iterator | Beispiel |
|---|---|---|
AVERAGE | AVERAGEX | Durchschnittlicher Bestellwert über alle Bestellungen |
COUNT | COUNTX | Zeilen zählen, bei denen ein Ausdruck nicht leer ist |
MIN / MAX | MINX / MAXX | Höchster Umsatz einer einzelnen Bestellung |
PRODUCT | PRODUCTX | Zusammengesetzte Wachstumsraten |
RANKX funktioniert genauso: Die Funktion iteriert über eine Tabelle und ordnet jede Zeile per Ausdruck in eine Rangfolge ein. Der RANKX-Leitfaden behandelt sie. Wenn Sie verstanden haben, wie SUMX iteriert, lesen sich alle diese Funktionen gleich.
Fazit
Nutzen Sie SUM, wenn der Wert schon in einer Spalte steht. Nutzen Sie SUMX, wenn jede Zeile vor dem Addieren eine Berechnung mit Multiplikation, Division oder bedingter Logik braucht. Für reines Addieren oder Subtrahieren von Spalten reicht SUM je Spalte. Wie SUMX mit Filtern zusammenspielt, lesen Sie als Nächstes im Leitfaden zur Funktion CALCULATE.
FAQs
Was ist DAX?
DAX (Data Analysis Expressions) ist die Formelsprache von Power BI, Analysis Services und Power Pivot in Excel. Damit schreiben Sie Measures, berechnete Spalten und berechnete Tabellen. SUM, SUMX und CALCULATE sind DAX-Funktionen. Der vollständige DAX-Leitfaden stellt die wichtigsten vor.
Quellen
SUMX function (DAX) - Microsoft Learn
SUM function (DAX) - Microsoft Learn
SUM addiert die Werte einer Spalte. SUMX nimmt eine Tabelle und einen Ausdruck, berechnet den Ausdruck einmal für jede Zeile der Tabelle und addiert dann die Ergebnisse. Nutzen Sie SUM, wenn die gesuchte Zahl schon in einer Spalte steht, und SUMX, wenn jede Zeile zuerst eine eigene Berechnung braucht, etwa Menge mal Preis.
Beides sind DAX-Funktionen, und beide liefern eine einzelne Zahl, die die Filter im Visual berücksichtigt.
Was sind SUM und SUMX in Power BI?
Den Unterschied sieht man am besten, wenn man für beide denselben Datensatz nutzt. Die Beispiele unten verwenden eine Tabelle namens score mit einer Zeile pro Kunde und Spalten wie Health Score und CSM Sentiment.

Tabellenansicht der Tabelle score, die in den Beispielen verwendet wird.
Die Funktion SUM erklärt
SUM nimmt genau eine Spalte und liefert die Summe ihrer Zahlen im aktuellen Filterkontext.
SUM ( <column>So addieren Sie die Spalte Health Score:
Total Health Score = SUM ( score[Health Score] )![Formelleiste von Power BI Desktop mit dem Measure Total Health Score = sum(score[Health Score]) und darunter ein Gauge-Visual, das 2M zeigt](https://framerusercontent.com/images/MW2uJPBt1cftKh1MdLh9YnyZ6Ks.png)
Das Measure Total Health Score in der Formelleiste, dargestellt in einem Gauge-Visual.
SUM kann keinen Ausdruck verarbeiten. SUM ( score[Health Score] - score[CSM Sentiment] ) ist ein Fehler, weil das Argument ein Spaltenverweis sein muss.
Die Funktion SUMX erklärt
SUMX ist ein Iterator. Die Funktion geht eine Tabelle Zeile für Zeile durch, wertet für jede Zeile einen Ausdruck aus und addiert die Ergebnisse.
SUMX ( <table>, <expression>So addieren Sie die Differenz zwischen Health Score und CSM Sentiment, hier Net Score genannt:
Net Score = SUMX ( score, score[Health Score] - score[CSM Sentiment] )![Formelleiste von Power BI Desktop mit dem Measure Net Score = sumx(score, score[Health Score]-score[CSM Sentiment]) und darunter ein Gauge-Visual, das 112K zeigt](https://framerusercontent.com/images/c4KYD3L6dNgg6ASbAicM05w9cb8.png)
Das Measure Net Score mit SUMX, dargestellt im selben Gauge-Visual.
Für jede Zeile zieht SUMX den CSM Sentiment vom Health Score ab und addiert dann alle Zeilenergebnisse. Mit Beispielwerten sieht der Schritt pro Zeile so aus:
Health Score | CSM Sentiment | Net Score pro Zeile |
|---|---|---|
70 | 55 | 15 |
70 | 50 | 20 |
65 | 50 | 15 |
60 | 35 | 25 |
SUMX liefert 75, die Summe der letzten Spalte.
Wann SUM und SUMX dasselbe Ergebnis liefern
Bei Plus oder Minus brauchen Sie SUMX nicht. Die Summe der Differenzen pro Zeile ergibt dasselbe wie die Differenz der beiden Spaltensummen:
Net Score SUM = SUM ( score[Health Score] ) - SUM ( score[CSM Sentiment] )Bei den vier Zeilen oben ist das 265 minus 190, also ebenfalls 75.
Wann nur SUMX das richtige Ergebnis liefert
Die Ergebnisse gehen auseinander, sobald die Zeilenberechnung multipliziert oder dividiert. Nehmen Sie eine Tabelle Sales mit Quantity und Unit Price:
Bestellung | Menge | Stückpreis | Umsatz pro Zeile |
|---|---|---|---|
A | 1 | 100 | 100 |
B | 10 | 5 | 50 |
Der Umsatz ist 150. Das richtige Measure lautet:
Revenue = SUMX ( Sales, Sales[Quantity] * Sales[Unit Price] )Multipliziert man stattdessen die beiden Summen, ergibt das 11 mal 105, also 1.155:
Revenue Wrong = SUM ( Sales[Quantity] ) * SUM ( Sales[Unit Price] )Für genau diesen Fall gibt es SUMX. Die Alternative ist eine Spalte Revenue, die pro Zeile berechnet wird. Der Beitrag Measures vs. berechnete Spalten vergleicht beide Wege.
Best Practices für die Funktion SUMX
SUMX nicht überstrapazieren
Steht der Wert schon in einer Spalte, nutzen Sie SUM. SUMX ( Sales, Sales[Amount] ) liefert dasselbe Ergebnis wie SUM ( Sales[Amount] ) und ist schwerer zu lesen.
SUMX ist nicht an sich langsam. Ein einfacher Ausdruck über Spalten einer Tabelle, etwa Menge mal Stückpreis, wird von der Engine effizient verarbeitet. Teuer wird es, wenn der Ausdruck pro Zeile viel Arbeit leistet, zum Beispiel ein Measure aufruft, IF-Logik nutzt oder Werte in anderen Tabellen nachschlägt, und das über Millionen Zeilen.
Tipps für bessere Performance mit SUMX
Iterieren Sie über die kleinste Tabelle, die die Frage beantwortet.
SUMX ( VALUES ( Customer[CustomerKey] ), ... )geht Kunden durch, nicht jede Verkaufszeile.Halten Sie den Zeilenausdruck möglichst bei einfacher Spaltenarithmetik.
Speichern Sie wiederholte Ergebnisse in Variablen, damit sie nur einmal berechnet werden.
Der Leitfaden zur DAX-Performance zeigt, wie Sie messen, ob ein SUMX-Measure das langsame ist.
Was bringt das bei anderen DAX-Funktionen?
SUMX gehört zu einer Familie von Iteratoren. Die meisten gängigen Aggregationen haben eine X-Version, die eine Tabelle und einen Ausdruck nimmt:
Aggregator | Iterator | Beispiel |
|---|---|---|
AVERAGE | AVERAGEX | Durchschnittlicher Bestellwert über alle Bestellungen |
COUNT | COUNTX | Zeilen zählen, bei denen ein Ausdruck nicht leer ist |
MIN / MAX | MINX / MAXX | Höchster Umsatz einer einzelnen Bestellung |
PRODUCT | PRODUCTX | Zusammengesetzte Wachstumsraten |
RANKX funktioniert genauso: Die Funktion iteriert über eine Tabelle und ordnet jede Zeile per Ausdruck in eine Rangfolge ein. Der RANKX-Leitfaden behandelt sie. Wenn Sie verstanden haben, wie SUMX iteriert, lesen sich alle diese Funktionen gleich.
Fazit
Nutzen Sie SUM, wenn der Wert schon in einer Spalte steht. Nutzen Sie SUMX, wenn jede Zeile vor dem Addieren eine Berechnung mit Multiplikation, Division oder bedingter Logik braucht. Für reines Addieren oder Subtrahieren von Spalten reicht SUM je Spalte. Wie SUMX mit Filtern zusammenspielt, lesen Sie als Nächstes im Leitfaden zur Funktion CALCULATE.
FAQs
Was ist DAX?
DAX (Data Analysis Expressions) ist die Formelsprache von Power BI, Analysis Services und Power Pivot in Excel. Damit schreiben Sie Measures, berechnete Spalten und berechnete Tabellen. SUM, SUMX und CALCULATE sind DAX-Funktionen. Der vollständige DAX-Leitfaden stellt die wichtigsten vor.
Quellen
SUMX function (DAX) - Microsoft Learn
SUM function (DAX) - Microsoft Learn
Mehr zu diesem Thema.
Zeigen Sie uns Ihren Report, dem niemand traut.
1 · Ein Gespräch von 30 Minuten.
2 · Wir sehen uns gemeinsam Ihre aktuellen Reports an.
3 · Wir sagen Ihnen, was wir tun würden.
Zeigen Sie uns Ihren Report, dem niemand traut.
1 · Ein Gespräch von 30 Minuten.
2 · Wir sehen uns gemeinsam Ihre aktuellen Reports an.
3 · Wir sagen Ihnen, was wir tun würden.
Zeigen Sie uns Ihren Report, dem niemand traut.
1 · Ein Gespräch von 30 Minuten.
2 · Wir sehen uns gemeinsam Ihre aktuellen Reports an.
3 · Wir sagen Ihnen, was wir tun würden.
CaseWhen ist eine BI-Beratung aus Berlin. Wir bauen Reporting, dem die Geschäftsführung vertraut, auf dem Microsoft-Stack: Power BI, Fabric und Azure.
Berlin, Deutschland
Kostenlose Tools
CaseWhen ist eine BI-Beratung aus Berlin. Wir bauen Reporting, dem die Geschäftsführung vertraut, auf dem Microsoft-Stack: Power BI, Fabric und Azure.
Berlin, Deutschland
Kostenlose Tools
CaseWhen ist eine BI-Beratung aus Berlin. Wir bauen Reporting, dem die Geschäftsführung vertraut, auf dem Microsoft-Stack: Power BI, Fabric und Azure.
Berlin, Deutschland
