SUMMARIZE
Van toepassing op:berekende kolom
berekende tabel
Meting
Visuele berekening
Retourneert een samenvattingstabel voor de aangevraagde totalen voor een set groepen.
Syntaxis
SUMMARIZE (<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, <name>, <expression>]…)
Parameters
Term | Definitie |
---|---|
table |
Elke DAX-expressie die een tabel met gegevens retourneert. |
groupBy_ColumnName |
(Optioneel) De gekwalificeerde naam van een bestaande kolom die wordt gebruikt om samenvattingsgroepen te maken op basis van de waarden die erin zijn gevonden. Deze parameter kan geen expressie zijn. |
name |
De naam die wordt gegeven aan een totaalkolom of een samenvattingskolom, tussen dubbele aanhalingstekens. |
expression |
Elke DAX-expressie die één scalaire waarde retourneert, waarbij de expressie meerdere keren moet worden geëvalueerd (voor elke rij/context). |
Retourwaarde
Een tabel met de geselecteerde kolommen voor de groupBy_columnName
argumenten en de samengevatte kolommen die zijn ontworpen door de naamargumenten.
Opmerkingen
Elke kolom waarvoor u een naam definieert, moet een bijbehorende expressie hebben; anders wordt er een fout geretourneerd. Het eerste argument, de naam, definieert de naam van de kolom in de resultaten. Het tweede argument, expressie, definieert de berekening die wordt uitgevoerd om de waarde voor elke rij in die kolom te verkrijgen.
groupBy_columnName moet zich in
table
of in een gerelateerde tabel bevinden voortable
.Elke naam moet tussen dubbele aanhalingstekens staan.
De functie groepeert een geselecteerde set rijen in een set samenvattingsrijen op basis van de waarden van een of meer groupBy_columnName kolommen. Er wordt één rij geretourneerd voor elke groep.
Deze functie wordt niet ondersteund voor gebruik in de DirectQuery-modus wanneer deze wordt gebruikt in regels voor beveiliging op rijniveau (berekende kolommen of beveiliging op rijniveau).
Opmerking
In het volgende voorbeeld wordt een samenvatting geretourneerd van de verkoop van wederverkopers gegroepeerd rond het kalenderjaar en de naam van de productcategorie. In deze resultaattabel kunt u analyses uitvoeren op de verkoop van de reseller per jaar en productcategorie.
SUMMARIZE(ResellerSales_USD
, DateTime[CalendarYear]
, ProductCategory[ProductCategoryName]
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
In de volgende tabel ziet u een voorbeeld van de gegevens, zoals deze worden ontvangen door elke functie die verwacht een tabel te ontvangen:
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Verkoopbedrag (USD)] | [Kortingsbedrag (USD)] |
---|---|---|---|
2008 | Fietsen | 12968255.42 | 36167.6592 |
2005 | Fietsen | 6958251.043 | 4231.1621 |
2006 | Fietsen | 18901351.08 | 178175.8399 |
2007 | Fietsen | 24256817.5 | 276065.992 |
2008 | Onderdelen | 2008052.706 | 39.9266 |
2005 | Onderdelen | 574256.9865 | 0 |
2006 | Onderdelen | 3428213.05 | 948.7674 |
2007 | Onderdelen | 5195315.216 | 4226.0444 |
2008 | Kleding | 366507.844 | 4151.1235 |
2005 | Kleding | 31851.1628 | 90.9593 |
2006 | Kleding | 455730.9729 | 4233.039 |
2007 | Kleding | 815853.2868 | 12489.3835 |
2008 | Accessoires | 153299.924 | 865.5945 |
2005 | Accessoires | 18594.4782 | 4.293 |
2006 | Accessoires | 86612.7463 | 1061.4872 |
2007 | Accessoires | 275794.8403 | 4756.6546 |
Met ROLLUP
De toevoeging van de ROLLUP syntaxis wijzigt het gedrag van de SUMMARIZE functie door samengetelde rijen toe te voegen aan het resultaat op de groupBy_columnName kolommen. ROLLUP kan alleen worden gebruikt binnen een SUMMARIZE expressie.
Opmerking
In het volgende voorbeeld worden samengetelde rijen toegevoegd aan de Group-By kolommen van de SUMMARIZE functie-aanroep:
SUMMARIZE(ResellerSales_USD
, ROLLUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName])
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
Retourneert de volgende tabel,
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Verkoopbedrag (USD)] | [Kortingsbedrag (USD)] |
---|---|---|---|
2008 | Fietsen | 12968255.42 | 36167.6592 |
2005 | Fietsen | 6958251.043 | 4231.1621 |
2006 | Fietsen | 18901351.08 | 178175.8399 |
2007 | Fietsen | 24256817.5 | 276065.992 |
2008 | Onderdelen | 2008052.706 | 39.9266 |
2005 | Onderdelen | 574256.9865 | 0 |
2006 | Onderdelen | 3428213.05 | 948.7674 |
2007 | Onderdelen | 5195315.216 | 4226.0444 |
2008 | Kleding | 366507.844 | 4151.1235 |
2005 | Kleding | 31851.1628 | 90.9593 |
2006 | Kleding | 455730.9729 | 4233.039 |
2007 | Kleding | 815853.2868 | 12489.3835 |
2008 | Accessoires | 153299.924 | 865.5945 |
2005 | Accessoires | 18594.4782 | 4.293 |
2006 | Accessoires | 86612.7463 | 1061.4872 |
2007 | Accessoires | 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 |
Met ROLLUPGROUP
De toevoeging van ROLLUPGROUP in een ROLLUP syntaxis kan worden gebruikt om gedeeltelijke subtotalen in samengetelde rijen te voorkomen. ROLLUPGROUP kan alleen worden gebruikt binnen een ROLLUP, ROLLUPADDISSUBTOTALof ROLLUPISSUBTOTAL expressie.
Opmerking
In het volgende voorbeeld ziet u alleen het eindtotaal van alle jaren en categorieën zonder het subtotaal van elk jaar met alle categorieën:
SUMMARIZE(ResellerSales_USD
, ROLLUP(ROLLUPGROUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName]))
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
Retourneert de volgende tabel,
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Verkoopbedrag (USD)] | [Kortingsbedrag (USD)] |
---|---|---|---|
2008 | Fietsen | 12968255.42 | 36167.6592 |
2005 | Fietsen | 6958251.043 | 4231.1621 |
2006 | Fietsen | 18901351.08 | 178175.8399 |
2007 | Fietsen | 24256817.5 | 276065.992 |
2008 | Onderdelen | 2008052.706 | 39.9266 |
2005 | Onderdelen | 574256.9865 | 0 |
2006 | Onderdelen | 3428213.05 | 948.7674 |
2007 | Onderdelen | 5195315.216 | 4226.0444 |
2008 | Kleding | 366507.844 | 4151.1235 |
2005 | Kleding | 31851.1628 | 90.9593 |
2006 | Kleding | 455730.9729 | 4233.039 |
2007 | Kleding | 815853.2868 | 12489.3835 |
2008 | Accessoires | 153299.924 | 865.5945 |
2005 | Accessoires | 18594.4782 | 4.293 |
2006 | Accessoires | 86612.7463 | 1061.4872 |
2007 | Accessoires | 275794.8403 | 4756.6546 |
76494758.25 | 527507.9262 |
Met ISSUBTOTAL
Met ISSUBTOTALkunt u een andere kolom maken in de SUMMARIZE-expressie die Waar retourneert als de rij subtotaalwaarden bevat voor de kolom die als argument is opgegeven voor ISSUBTOTAL, anders wordt Onwaar geretourneerd. ISSUBTOTAL kan alleen worden gebruikt binnen een SUMMARIZE expressie.
Opmerking
In het volgende voorbeeld wordt een ISSUBTOTAL kolom gegenereerd voor elk van de ROLLUP kolommen in de opgegeven SUMMARIZE functieaanroep:
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])
)
Retourneert de volgende tabel,
[Is subtotaal voor DateTimeCalendarYear] | [Is subtotaal voor ProductCategoryName] | DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Verkoopbedrag (USD)] | [Kortingsbedrag (USD)] |
---|---|---|---|---|---|
FALSE |
FALSE |
||||
FALSE |
FALSE |
2008 | Fietsen | 12968255.42 | 36167.6592 |
FALSE |
FALSE |
2005 | Fietsen | 6958251.043 | 4231.1621 |
FALSE |
FALSE |
2006 | Fietsen | 18901351.08 | 178175.8399 |
FALSE |
FALSE |
2007 | Fietsen | 24256817.5 | 276065.992 |
FALSE |
FALSE |
2008 | Onderdelen | 2008052.706 | 39.9266 |
FALSE |
FALSE |
2005 | Onderdelen | 574256.9865 | 0 |
FALSE |
FALSE |
2006 | Onderdelen | 3428213.05 | 948.7674 |
FALSE |
FALSE |
2007 | Onderdelen | 5195315.216 | 4226.0444 |
FALSE |
FALSE |
2008 | Kleding | 366507.844 | 4151.1235 |
FALSE |
FALSE |
2005 | Kleding | 31851.1628 | 90.9593 |
FALSE |
FALSE |
2006 | Kleding | 455730.9729 | 4233.039 |
FALSE |
FALSE |
2007 | Kleding | 815853.2868 | 12489.3835 |
FALSE |
FALSE |
2008 | Accessoires | 153299.924 | 865.5945 |
FALSE |
FALSE |
2005 | Accessoires | 18594.4782 | 4.293 |
FALSE |
FALSE |
2006 | Accessoires | 86612.7463 | 1061.4872 |
FALSE |
FALSE |
2007 | Accessoires | 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 |