OPPSUMMERE
Gjelder for: Beregnet beregning av beregnet tabell for beregnet tabell Mål visualobjekt
Returnerer en sammendragstabell for de forespurte totalsummene over et sett med grupper.
Syntaks
SUMMARIZE (<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, <name>, <expression>]…)
Parametere
Term | Definisjon |
---|---|
tabellen | 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å verdiene i den. Denne parameteren kan ikke være et uttrykk. |
name | Navnet som er gitt til en total eller oppsummeringskolonne, omsluttet av doble anførselstegn. |
uttrykk | Alle DAX-uttrykk som returnerer én enkelt skalarverdi, der uttrykket skal evalueres flere ganger (for hver rad/kontekst). |
Returverdi
En tabell med de valgte kolonnene for groupBy_columnName-argumentene og de summerte kolonnene som er utformet av navneargumentene.
Merknader
Hver kolonne du definerer et navn for, må ha et tilsvarende uttrykk. Ellers returneres en feil. Det første argumentet, navnet, definerer navnet på kolonnen i resultatene. Det andre argumentet, uttrykk, definerer beregningen som utføres for å hente verdien for hver rad i denne kolonnen.
groupBy_columnName må være enten i tabellen eller i en relatert tabell til tabell.
Hvert navn må stå i doble anførselstegn.
Funksjonen grupperer et merket sett med rader i et sett med sammendragsrader etter verdiene for én eller flere groupBy_columnName kolonner. Én rad returneres for hver gruppe.
Denne funksjonen støttes ikke for bruk i DirectQuery-modus når den brukes i beregnede kolonner eller regler for sikkerhet på radnivå (RLS).
Eksempel
Eksemplet nedenfor returnerer et sammendrag av forhandlersalget som er gruppert rundt kalenderåret og navnet på produktkategorien. Denne resultattabellen lar deg utføre analyser over forhandlersalget etter år og produktkategori.
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 mottas 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 BEREGNET VERDI
Tillegg av ROLLUP-syntaksen endrer virkemåten til SUMMARIZE-funksjonen ved å legge til rader for beregnet verdi i resultatet på groupBy_columnName kolonner. ROLLUP kan bare brukes i et SUMMARIZE-uttrykk .
Eksempel
Følgende eksempel legger til rader for beregnet verdi i kolonnene Grupper etter i sammendragsfunksjonskallet:
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 rader for beregnet verdi. ROLLUPGROUP kan bare brukes i et ROLLUP-, ROLLUPADDISSUBTOTAL- eller ROLLUPISSUBTOTAL-uttrykk .
Eksempel
Følgende eksempel viser bare totalsummen for alle år og kategorier uten delsummen for hvert år med alle 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 ISSUBTOTAL kan du opprette en annen kolonne i SUMMARIZE-uttrykket som returnerer Sann hvis raden inneholder delsumverdier for kolonnen som er angitt som argument for ISSUBTOTAL, ellers returneres Usann. ISSUBTOTAL kan bare brukes i et SUMMARIZE-uttrykk.
Eksempel
Følgende eksempel genererer en ISSUBTOTAL-kolonne for hver av 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 |