SUMMARIZE
gjelder:beregnet kolonneberegnet tabellMeasurevisualobjektberegning
Returnerer en sammendragstabell for de forespurte totalsummene over et sett med grupper.
Syntaks
SUMMARIZE (<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, <name>, <expression>]…)
Parametere
Term | Definisjon |
---|---|
table |
Alle DAX uttrykk som returnerer en tabell med data. |
groupBy_ColumnName |
(Valgfritt) Det kvalifiserte navnet på en eksisterende kolonne som brukes til å opprette sammendragsgrupper basert på values som ble funnet i den. Denne parameteren kan ikke være et uttrykk. |
name |
Navnet som er gitt til en total orsummarize kolonne, omsluttet av doble anførselstegn. |
expression |
Alle DAX uttrykk som returnerer en enkelt skalar value, der uttrykket skal evalueres flere ganger (for hver rad/kontekst). |
Returner value
En tabell med de valgte kolonnene for groupBy_columnName
-argumentene and de summerte kolonnene som er utformet av navneargumentene.
Merknader
Hver kolonne du define et navn for, må ha et tilsvarende uttrykk. Ellers returneres en error. Argumentet first, navn, definerer navnet på kolonnen i resultatene. Argumentet second, uttrykk, definerer beregningen som utføres for å hente value for hver rad i denne kolonnen.
groupBy_columnName må være enten i
table
or i en related tabell for åtable
.Hvert navn må stå i doble anførselstegn.
Funksjonen grupperer et merket sett med rader i et sett med sammendragsrader etter values av én or flere groupBy_columnName kolonner. Én rad returneres for hver gruppe.
Denne funksjonen støttes not for bruk i DirectQuery-modus når den brukes i beregnede kolonner or regler for sikkerhet på radnivå (RLS).
Eksempel
Eksemplet nedenfor returnerer et sammendrag av forhandlersalgene som er gruppert rundt calendaryearand kategorinavnet product, slik at du kan utføre analyser over forhandlersalget etter yearandproduct kategori.
SUMMARIZE(ResellerSales_USD
, DateTime[CalendarYear]
, ProductCategory[ProductCategoryName]
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
Tabellen nedenfor viser en forhåndsvisning av dataene slik de blir received av en hvilken som helst funksjon som forventer å motta en tabell:
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Salgsbeløp (USD)] | [Rabattbeløp (USD)] |
---|---|---|---|
2008 | Sykler | 12968255.42 | 36167.6592 |
2005 | Sykler | 6958251.043 | 4231.1621 |
2006 | Sykler | 18901351.08 | 178175.8399 |
2007 | Sykler | 24256817.5 | 276065.992 |
2008 | Komponenter | 2008052.706 | 39.9266 |
2005 | Komponenter | 574256.9865 | 0 |
2006 | Komponenter | 3428213.05 | 948.7674 |
2007 | Komponenter | 5195315.216 | 4226.0444 |
2008 | Klær | 366507.844 | 4151.1235 |
2005 | Klær | 31851.1628 | 90.9593 |
2006 | Klær | 455730.9729 | 4233.039 |
2007 | Klær | 815853.2868 | 12489.3835 |
2008 | Tilbehør | 153299.924 | 865.5945 |
2005 | Tilbehør | 18594.4782 | 4.293 |
2006 | Tilbehør | 86612.7463 | 1061.4872 |
2007 | Tilbehør | 275794.8403 | 4756.6546 |
Med ROLLUP
Tilføyelsen av ROLLUP-syntaksen endrer virkemåten til SUMMARIZE-funksjonen ved å legge til rollup rader i resultatet på groupBy_columnName kolonnene. ROLLUP kan bare brukes i et SUMMARIZE uttrykk.
Eksempel
Følgende eksempel legger til rollup rader i Group-By kolonnene i SUMMARIZE funksjonskallet:
SUMMARIZE(ResellerSales_USD
, ROLLUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName])
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
Returnerer tabellen nedenfor:
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Salgsbeløp (USD)] | [Rabattbeløp (USD)] |
---|---|---|---|
2008 | Sykler | 12968255.42 | 36167.6592 |
2005 | Sykler | 6958251.043 | 4231.1621 |
2006 | Sykler | 18901351.08 | 178175.8399 |
2007 | Sykler | 24256817.5 | 276065.992 |
2008 | Komponenter | 2008052.706 | 39.9266 |
2005 | Komponenter | 574256.9865 | 0 |
2006 | Komponenter | 3428213.05 | 948.7674 |
2007 | Komponenter | 5195315.216 | 4226.0444 |
2008 | Klær | 366507.844 | 4151.1235 |
2005 | Klær | 31851.1628 | 90.9593 |
2006 | Klær | 455730.9729 | 4233.039 |
2007 | Klær | 815853.2868 | 12489.3835 |
2008 | Tilbehør | 153299.924 | 865.5945 |
2005 | Tilbehør | 18594.4782 | 4.293 |
2006 | Tilbehør | 86612.7463 | 1061.4872 |
2007 | Tilbehør | 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 |
Med ROLLUPGROUP
Tillegg av ROLLUPGROUP i en ROLLUP syntaks kan brukes til å forhindre delvise delsummer i rollup rader. ROLLUPGROUP kan bare brukes i et ROLLUP, ROLLUPADDISSUBTOTAL, orROLLUPISSUBTOTAL uttrykk.
Eksempel
Følgende eksempel viser bare totalsummen på all år and kategorier uten delsummen for hver year med all kategorier:
SUMMARIZE(ResellerSales_USD
, ROLLUP(ROLLUPGROUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName]))
, "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
, "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)
Returnerer tabellen nedenfor:
DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Salgsbeløp (USD)] | [Rabattbeløp (USD)] |
---|---|---|---|
2008 | Sykler | 12968255.42 | 36167.6592 |
2005 | Sykler | 6958251.043 | 4231.1621 |
2006 | Sykler | 18901351.08 | 178175.8399 |
2007 | Sykler | 24256817.5 | 276065.992 |
2008 | Komponenter | 2008052.706 | 39.9266 |
2005 | Komponenter | 574256.9865 | 0 |
2006 | Komponenter | 3428213.05 | 948.7674 |
2007 | Komponenter | 5195315.216 | 4226.0444 |
2008 | Klær | 366507.844 | 4151.1235 |
2005 | Klær | 31851.1628 | 90.9593 |
2006 | Klær | 455730.9729 | 4233.039 |
2007 | Klær | 815853.2868 | 12489.3835 |
2008 | Tilbehør | 153299.924 | 865.5945 |
2005 | Tilbehør | 18594.4782 | 4.293 |
2006 | Tilbehør | 86612.7463 | 1061.4872 |
2007 | Tilbehør | 275794.8403 | 4756.6546 |
76494758.25 | 527507.9262 |
Med ISSUBTOTAL
Med ISSUBTOTALkan du opprette en annen kolonne i SUMMARIZE-uttrykket som returnerer Trueif raden contains delsum values for kolonnen som er angitt som argument for ISSUBTOTAL, ellers returneres False. ISSUBTOTAL kan bare brukes i et SUMMARIZE uttrykk.
Eksempel
Følgende sample genererer en ISSUBTOTAL kolonne for hver av de ROLLUP kolonnene i det angitte SUMMARIZE funksjonskallet:
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])
)
Returnerer tabellen nedenfor:
[Er delsum for DateTimeCalendarYear] | [Er delsum for ProductCategoryName] | DateTime[CalendarYear] | ProductCategory[ProductCategoryName] | [Salgsbeløp (USD)] | [Rabattbeløp (USD)] |
---|---|---|---|---|---|
FALSE |
FALSE |
||||
FALSE |
FALSE |
2008 | Sykler | 12968255.42 | 36167.6592 |
FALSE |
FALSE |
2005 | Sykler | 6958251.043 | 4231.1621 |
FALSE |
FALSE |
2006 | Sykler | 18901351.08 | 178175.8399 |
FALSE |
FALSE |
2007 | Sykler | 24256817.5 | 276065.992 |
FALSE |
FALSE |
2008 | Komponenter | 2008052.706 | 39.9266 |
FALSE |
FALSE |
2005 | Komponenter | 574256.9865 | 0 |
FALSE |
FALSE |
2006 | Komponenter | 3428213.05 | 948.7674 |
FALSE |
FALSE |
2007 | Komponenter | 5195315.216 | 4226.0444 |
FALSE |
FALSE |
2008 | Klær | 366507.844 | 4151.1235 |
FALSE |
FALSE |
2005 | Klær | 31851.1628 | 90.9593 |
FALSE |
FALSE |
2006 | Klær | 455730.9729 | 4233.039 |
FALSE |
FALSE |
2007 | Klær | 815853.2868 | 12489.3835 |
FALSE |
FALSE |
2008 | Tilbehør | 153299.924 | 865.5945 |
FALSE |
FALSE |
2005 | Tilbehør | 18594.4782 | 4.293 |
FALSE |
FALSE |
2006 | Tilbehør | 86612.7463 | 1061.4872 |
FALSE |
FALSE |
2007 | Tilbehør | 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 |