SUMMARIZE
Gilt für:Berechnete Spalteberechnete TabelleMeasurevisuelle 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 dem darin gefundenen values verwendet wird. Bei diesem Parameter darf es sich nicht um einen Ausdruck handeln. |
name |
Der Name, der einer Summe orsummarize Spalte zugeordnet ist und in doppelte Anführungszeichen gesetzt ist. |
expression |
Jeder DAX Ausdruck, der einen einzelnen skalaren valuezurückgibt, wobei der Ausdruck mehrmals ausgewertet werden soll (für jede Zeile/jeden Kontext). |
value zurückgeben
Eine Tabelle mit den ausgewählten Spalten für die groupBy_columnName
Argumente and die zusammengefassten Spalten, die von den Namensargumenten entworfen wurden.
Bemerkungen
Jede Spalte, für die Sie einen Namen define, muss über einen entsprechenden Ausdruck verfügen; andernfalls wird ein error zurückgegeben. Das argument first, name, definiert den Namen der Spalte in den Ergebnissen. Das argument second, Ausdruck, definiert die Berechnung, die ausgeführt wurde, um die value für jede Zeile in dieser Spalte abzurufen.
groupBy_columnName müssen in
table
or in einer related Tabelletable
sein.Jeder Name muss in doppelte Anführungszeichen gesetzt werden.
Die Funktion gruppiert einen ausgewählten Satz von Zeilen in einer Reihe von Sammelzeilen nach dem values einer or mehr groupBy_columnName Spalten. Für jede Gruppe wird eine Zeile zurückgegeben.
Diese Funktion wird not für die Verwendung im DirectQuery-Modus unterstützt, wenn sie in berechneten Spalten or Sicherheitsregeln auf Zeilenebene (RLS) verwendet wird.
Beispiel
Im folgenden Beispiel wird eine Zusammenfassung der Vertriebsumsätze zurückgegeben, die um den calendaryearandproduct Kategorienamen gruppiert sind. Anhand dieser Ergebnistabelle können Sie die Vertriebsumsätze nach yearandproduct Kategorie 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 received 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 rollup Zeilen zum Ergebnis in den groupBy_columnName Spalten hinzugefügt werden. ROLLUP kann nur innerhalb eines SUMMARIZE Ausdrucks verwendet werden.
Beispiel
Im folgenden Beispiel werden rollup Zeilen zu den Group-By Spalten des SUMMARIZE Funktionsaufrufs 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 rollup Zeilen zu verhindern. ROLLUPGROUP kann nur innerhalb eines ROLLUP, ROLLUPADDISSUBTOTAL, orROLLUPISSUBTOTAL Ausdrucks verwendet werden.
Beispiel
Das folgende Beispiel zeigt nur die Gesamtsumme der all Jahre and Kategorien ohne das Teilergebnis der einzelnen year mit all 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, die Trueif die Zeile contains Teilergebnis-values für die Als Argument angegebene Spalte ISSUBTOTALzurückgibt, andernfalls wird Falsezurückgegeben. ISSUBTOTAL kann nur innerhalb eines SUMMARIZE Ausdrucks verwendet werden.
Beispiel
Im folgenden sample 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 |