SUMMARIZE
Gilt für:Berechnete Spalte
Berechnete Tabelle
Measure
visuelle Berechnung
Gibt eine Zusammenfassungstabelle für die angeforderten Gesamtsummen über Gruppensätze zurück.
Syntax
SUMMARIZE (<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, <name>, <expression>]…)
Parameter
Begriff | Definition |
---|---|
table |
Ein beliebiger DAX Ausdruck, der eine Datentabelle zurückgibt. |
groupBy_ColumnName |
(Optional) Der qualifizierte Name einer vorhandenen Spalte, die zum Erstellen von Sammelgruppen basierend auf den darin enthaltenen Werten verwendet wird. Bei diesem Parameter darf es sich nicht um einen Ausdruck handeln. |
name |
Der Name, der einer Summen- oder Zusammenfassungsspalte zugeordnet ist und in doppelte Anführungszeichen gesetzt ist. |
expression |
Jeder DAX Ausdruck, der einen einzelnen skalaren Wert zurückgibt, wobei der Ausdruck mehrmals ausgewertet werden soll (für jede Zeile/jeden Kontext). |
Rückgabewert
Eine Tabelle mit den ausgewählten Spalten für die groupBy_columnName
Argumente und die zusammengefassten Spalten, die von den Namensargumenten entworfen wurden.
Bemerkungen
Jede Spalte, für die Sie einen Namen definieren, muss über einen entsprechenden Ausdruck verfügen. andernfalls wird ein Fehler zurückgegeben. Das erste Argument, name, definiert den Namen der Spalte in den Ergebnissen. Das zweite Argument, Ausdruck, definiert die Berechnung, die zum Abrufen des Werts für jede Zeile in dieser Spalte ausgeführt wurde.
groupBy_columnName müssen sich entweder in
table
oder in einer verknüpften Tabelle mittable
befinden.Jeder Name muss in doppelte Anführungszeichen gesetzt werden.
Die Funktion gruppiert einen ausgewählten Satz von Zeilen in eine Gruppe von Sammelzeilen nach den Werten einer oder mehrerer groupBy_columnName Spalten. Für jede Gruppe wird eine Zeile zurückgegeben.
Diese Funktion wird für die Verwendung im DirectQuery-Modus nicht unterstützt, wenn sie in berechneten Spalten oder Sicherheitsregeln auf Zeilenebene (RLS) verwendet wird.
Beispiel
Im folgenden Beispiel wird eine Zusammenfassung der Vertriebsmitarbeiter zurückgegeben, die um das Kalenderjahr und den Produktkategorienamen gruppiert sind. Diese Ergebnistabelle ermöglicht es Ihnen, die Vertriebsumsätze nach Jahr und Produktkategorie zu analysieren.
SUMMARIZE(ResellerSales_USD
, DateTime[CalendarYear]
, ProductCategory[ProductCategoryName]
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
Die folgende Tabelle zeigt eine Vorschau der Daten, da sie von jeder Funktion empfangen wird, die eine Tabelle empfängt:
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Sales Amount (USD)] | [Discount Amount (USD)] |
---|---|---|---|
2008 | Bikes | 12968255.42 | 36167.6592 |
2005 | Bikes | 6958251.043 | 4231.1621 |
2006 | Bikes | 18901351.08 | 178175.8399 |
2007 | Bikes | 24256817.5 | 276065.992 |
2008 | Komponenten | 2008052.706 | 39.9266 |
2005 | Komponenten | 574256.9865 | 0 |
2006 | Komponenten | 3428213.05 | 948.7674 |
2007 | Komponenten | 5195315.216 | 4226.0444 |
2008 | Clothing | 366507.844 | 4151.1235 |
2005 | Clothing | 31851.1628 | 90.9593 |
2006 | Clothing | 455730.9729 | 4233.039 |
2007 | Clothing | 815853.2868 | 12489.3835 |
2008 | Accessories | 153299.924 | 865.5945 |
2005 | Accessories | 18594.4782 | 4.293 |
2006 | Accessories | 86612.7463 | 1061.4872 |
2007 | Accessories | 275794.8403 | 4756.6546 |
Mit ROLLUP
Das Hinzufügen der ROLLUP syntax ändert das Verhalten der SUMMARIZE-Funktion, indem Rollupzeilen zum Ergebnis der groupBy_columnName Spalten hinzugefügt werden. ROLLUP kann nur innerhalb eines SUMMARIZE Ausdrucks verwendet werden.
Beispiel
Im folgenden Beispiel werden den Group-By Spalten des SUMMARIZE Funktionsaufrufs Rollupzeilen hinzugefügt:
SUMMARIZE(ResellerSales_USD
, ROLLUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName])
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
Die folgende Tabelle wird zurückgegeben:
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Sales Amount (USD)] | [Discount Amount (USD)] |
---|---|---|---|
2008 | Bikes | 12968255.42 | 36167.6592 |
2005 | Bikes | 6958251.043 | 4231.1621 |
2006 | Bikes | 18901351.08 | 178175.8399 |
2007 | Bikes | 24256817.5 | 276065.992 |
2008 | Komponenten | 2008052.706 | 39.9266 |
2005 | Komponenten | 574256.9865 | 0 |
2006 | Komponenten | 3428213.05 | 948.7674 |
2007 | Komponenten | 5195315.216 | 4226.0444 |
2008 | Clothing | 366507.844 | 4151.1235 |
2005 | Clothing | 31851.1628 | 90.9593 |
2006 | Clothing | 455730.9729 | 4233.039 |
2007 | Clothing | 815853.2868 | 12489.3835 |
2008 | Accessories | 153299.924 | 865.5945 |
2005 | Accessories | 18594.4782 | 4.293 |
2006 | Accessories | 86612.7463 | 1061.4872 |
2007 | Accessories | 275794.8403 | 4756.6546 |
2008 | 15496115.89 | 41224.3038 | |
2005 | 7582953.67 | 4326.4144 | |
2006 | 22871907.85 | 184419.1335 | |
2007 | 30543780.84 | 297538.0745 | |
76494758.25 | 527507.9262 |
Mit ROLLUPGROUP
Das Hinzufügen von ROLLUPGROUP in einer ROLLUP-Syntax kann verwendet werden, um Teilergebnisse in Rollupzeilen zu verhindern. ROLLUPGROUP können nur innerhalb eines ROLLUP, ROLLUPADDISSUBTOTALoder ROLLUPISSUBTOTAL Ausdrucks verwendet werden.
Beispiel
Das folgende Beispiel zeigt nur die Gesamtsumme aller Jahre und Kategorien ohne das Teilergebnis jedes Jahres mit allen Kategorien:
SUMMARIZE(ResellerSales_USD
, ROLLUP(ROLLUPGROUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName]))
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
Die folgende Tabelle wird zurückgegeben:
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Sales Amount (USD)] | [Discount Amount (USD)] |
---|---|---|---|
2008 | Bikes | 12968255.42 | 36167.6592 |
2005 | Bikes | 6958251.043 | 4231.1621 |
2006 | Bikes | 18901351.08 | 178175.8399 |
2007 | Bikes | 24256817.5 | 276065.992 |
2008 | Komponenten | 2008052.706 | 39.9266 |
2005 | Komponenten | 574256.9865 | 0 |
2006 | Komponenten | 3428213.05 | 948.7674 |
2007 | Komponenten | 5195315.216 | 4226.0444 |
2008 | Clothing | 366507.844 | 4151.1235 |
2005 | Clothing | 31851.1628 | 90.9593 |
2006 | Clothing | 455730.9729 | 4233.039 |
2007 | Clothing | 815853.2868 | 12489.3835 |
2008 | Accessories | 153299.924 | 865.5945 |
2005 | Accessories | 18594.4782 | 4.293 |
2006 | Accessories | 86612.7463 | 1061.4872 |
2007 | Accessories | 275794.8403 | 4756.6546 |
76494758.25 | 527507.9262 |
Mit ISSUBTOTAL
Mit ISSUBTOTALkönnen Sie eine weitere Spalte im SUMMARIZE Ausdruck erstellen, der True zurückgibt, wenn die Zeile Teilergebniswerte für die Spalte enthält, die als Argument für ISSUBTOTALangegeben wird, andernfalls "False" zurück. ISSUBTOTAL kann nur innerhalb eines SUMMARIZE Ausdrucks verwendet werden.
Beispiel
Im folgenden Beispiel wird eine ISSUBTOTAL Spalte für jede der ROLLUP Spalten im angegebenen SUMMARIZE Funktionsaufruf generiert:
SUMMARIZE(ResellerSales_USD
, ROLLUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName])
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
, "Is Sub Total for DateTimeCalendarYear", ISSUBTOTAL(DateTime[CalendarYear])
, "Is Sub Total for ProductCategoryName", ISSUBTOTAL(ProductCategory[ProductCategoryName])
)
Die folgende Tabelle wird zurückgegeben:
[Is Sub Total for DateTimeCalendarYear] | [Is Sub Total for ProductCategoryName] | DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Sales Amount (USD)] | [Discount Amount (USD)] |
---|---|---|---|---|---|
FALSE |
FALSE |
||||
FALSE |
FALSE |
2008 | Bikes | 12968255.42 | 36167.6592 |
FALSE |
FALSE |
2005 | Bikes | 6958251.043 | 4231.1621 |
FALSE |
FALSE |
2006 | Bikes | 18901351.08 | 178175.8399 |
FALSE |
FALSE |
2007 | Bikes | 24256817.5 | 276065.992 |
FALSE |
FALSE |
2008 | Komponenten | 2008052.706 | 39.9266 |
FALSE |
FALSE |
2005 | Komponenten | 574256.9865 | 0 |
FALSE |
FALSE |
2006 | Komponenten | 3428213.05 | 948.7674 |
FALSE |
FALSE |
2007 | Komponenten | 5195315.216 | 4226.0444 |
FALSE |
FALSE |
2008 | Clothing | 366507.844 | 4151.1235 |
FALSE |
FALSE |
2005 | Clothing | 31851.1628 | 90.9593 |
FALSE |
FALSE |
2006 | Clothing | 455730.9729 | 4233.039 |
FALSE |
FALSE |
2007 | Clothing | 815853.2868 | 12489.3835 |
FALSE |
FALSE |
2008 | Accessories | 153299.924 | 865.5945 |
FALSE |
FALSE |
2005 | Accessories | 18594.4782 | 4.293 |
FALSE |
FALSE |
2006 | Accessories | 86612.7463 | 1061.4872 |
FALSE |
FALSE |
2007 | Accessories | 275794.8403 | 4756.6546 |
FALSE |
TRUE |
||||
FALSE |
TRUE |
2008 | 15496115.89 | 41224.3038 | |
FALSE |
TRUE |
2005 | 7582953.67 | 4326.4144 | |
FALSE |
TRUE |
2006 | 22871907.85 | 184419.1335 | |
FALSE |
TRUE |
2007 | 30543780.84 | 297538.0745 | |
TRUE |
TRUE |
76494758.25 | 527507.9262 |