Zdieľať cez


SUMMARIZE

Vzťahuje sa na:vypočítaný stĺpecvypočítanej tabuľkyvizuálového výpočtu

Vráti súhrnnú tabuľku pre požadované súčty množiny skupín.

Syntax

SUMMARIZE (<table>, <groupBy_columnName>[, <groupBy_columnName>]…[, <name>, <expression>]…)

Parametre

Obdobie Definícia
table Akýkoľvek výraz DAX, ktorý vráti tabuľku údajov.
groupBy_ColumnName (Voliteľné) Kvalifikovaný názov existujúceho stĺpca, ktorý sa použije na vytvorenie súhrnných skupín na základe hodnôt, ktoré sa v ňom nachádzajú. Tento parameter nemôže byť výraz.
name Názov zadaný pre stĺpec so súčtom alebo súhrnom, ktorý je uzavretý v dvojitých úvodzovkách.
expression Akýkoľvek DAX výraz, ktorý vráti jednu skalárnu hodnotu, pričom výraz sa má vyhodnotiť viackrát (pre každý riadok alebo kontext).

Vrátená hodnota

Tabuľka s vybratými stĺpcami pre groupBy_columnName argumenty a súhrnné stĺpce označené argumentmi názvov.

Poznámky

  • Každý stĺpec, pre ktorý definujete názov, musí mať zodpovedajúci výraz; V opačnom prípade sa vráti chyba. Prvý argument (name) definuje názov stĺpca vo výsledkoch. Druhý argument (expression) definuje výpočet vykonaný na získanie hodnoty pre každý riadok v danom stĺpci.

  • groupBy_columnName musí byť buď v table, alebo v súvisiacej tabuľke na table.

  • Každý názov musí byť uzavretý v dvojitých úvodzovkách.

  • Funkcia zoskupí vybratú množinu riadkov do množiny riadkov súhrnu podľa hodnôt jedného alebo viacerých groupBy_columnName stĺpcov. Pre každú skupinu sa vráti jeden riadok.

  • Táto funkcia nie je podporovaná na použitie v režime DirectQuery, keď sa používa vo vypočítaných stĺpcoch alebo v pravidlách zabezpečenia na úrovni riadkov (RLS).

Príklad

V nasledujúcom príklade sa vráti súhrn predaja predajcu zoskupený podľa kalendárneho roka a názvu kategórie produktu. Táto tabuľka výsledkov vám umožňuje analyzovať predaj predajcu podľa rokov a kategórií produktov.

SUMMARIZE(ResellerSales_USD
      , DateTime[CalendarYear]
      , ProductCategory[ProductCategoryName]
      , "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
      , "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
      )

Nasledujúca tabuľka zobrazuje ukážku údajov tak, ako by ich prijala akákoľvek funkcia, ktorá očakáva prijatie tabuľky:

DateTime[KalendárnyRok] ProductCategory[NázovKategórieProduktov] [Sales Amount (USD)] [Discount Amount (USD)]
2008 Bicykle 12968255.42 36167.6592
2005 Bicykle 6958251.043 4231.1621
2006 Bicykle 18901351.08 178175.8399
2007 Bicykle 24256817.5 276065.992
2008 Súčasti 2008052.706 39.9266
2005 Súčasti 574256.9865 0
2006 Súčasti 3428213.05 948.7674
2007 Súčasti 5195315.216 4226.0444
2008 Oblečenie 366507.844 4151.1235
2005 Oblečenie 31851.1628 90.9593
2006 Oblečenie 455730.9729 4233.039
2007 Oblečenie 815853.2868 12489.3835
2008 Príslušenstvo 153299.924 865.5945
2005 Príslušenstvo 18594.4782 4.293
2006 Príslušenstvo 86612.7463 1061.4872
2007 Príslušenstvo 275794.8403 4756.6546

S ROLLUP

Pridaním syntaxe funkcie ROLLUP sa zmení správanie funkcie SUMMARIZE tým, že sa do výsledku pridajú riadky súhrnu v stĺpcoch groupBy_columnName. ROLLUP možno použiť iba v rámci výrazu SUMMARIZE.

Príklad

Nasledujúci príklad pridá riadky súhrnu do Group-By stĺpcov volania funkcie SUMMARIZE:

SUMMARIZE(ResellerSales_USD
      , ROLLUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName])
      , "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
      , "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)

Vráti nasledujúcu tabuľku,

DateTime[KalendárnyRok] ProductCategory[NázovKategórieProduktov] [Sales Amount (USD)] [Discount Amount (USD)]
2008 Bicykle 12968255.42 36167.6592
2005 Bicykle 6958251.043 4231.1621
2006 Bicykle 18901351.08 178175.8399
2007 Bicykle 24256817.5 276065.992
2008 Súčasti 2008052.706 39.9266
2005 Súčasti 574256.9865 0
2006 Súčasti 3428213.05 948.7674
2007 Súčasti 5195315.216 4226.0444
2008 Oblečenie 366507.844 4151.1235
2005 Oblečenie 31851.1628 90.9593
2006 Oblečenie 455730.9729 4233.039
2007 Oblečenie 815853.2868 12489.3835
2008 Príslušenstvo 153299.924 865.5945
2005 Príslušenstvo 18594.4782 4.293
2006 Príslušenstvo 86612.7463 1061.4872
2007 Príslušenstvo 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

S ROLLUPGROUP

Pridanie ROLLUPGROUP do syntaxe ROLLUP možno použiť na zamedzenie čiastočných medzisúčtov v riadkoch súhrnu. ROLLUPGROUP možno použiť iba v rámci výrazu ROLLUP, ROLLUPADDISSUBTOTALalebo ROLLUPISSUBTOTAL.

Príklad

Nasledujúci príklad zobrazuje iba celkový súčet všetkých rokov a kategórií bez medzisúčtu každého roka so všetkými kategóriami:

SUMMARIZE(ResellerSales_USD
      , ROLLUP(ROLLUPGROUP( DateTime[CalendarYear], ProductCategory[ProductCategoryName]))
      , "Sales Amount (USD)", SUM(ResellerSales_USD[SalesAmount_USD])
      , "Discount Amount (USD)", SUM(ResellerSales_USD[DiscountAmount])
)

Vráti nasledujúcu tabuľku,

DateTime[KalendárnyRok] ProductCategory[NázovKategórieProduktov] [Sales Amount (USD)] [Discount Amount (USD)]
2008 Bicykle 12968255.42 36167.6592
2005 Bicykle 6958251.043 4231.1621
2006 Bicykle 18901351.08 178175.8399
2007 Bicykle 24256817.5 276065.992
2008 Súčasti 2008052.706 39.9266
2005 Súčasti 574256.9865 0
2006 Súčasti 3428213.05 948.7674
2007 Súčasti 5195315.216 4226.0444
2008 Oblečenie 366507.844 4151.1235
2005 Oblečenie 31851.1628 90.9593
2006 Oblečenie 455730.9729 4233.039
2007 Oblečenie 815853.2868 12489.3835
2008 Príslušenstvo 153299.924 865.5945
2005 Príslušenstvo 18594.4782 4.293
2006 Príslušenstvo 86612.7463 1061.4872
2007 Príslušenstvo 275794.8403 4756.6546
76494758.25 527507.9262

S ISSUBTOTAL

Pomocou ISSUBTOTALmôžete vytvoriť vo výraze SUMMARIZE ďalší stĺpec, ktorý vráti hodnotu True, ak riadok obsahuje čiastkové hodnoty pre stĺpec zadaný ako argument na ISSUBTOTAL, v opačnom prípade vráti hodnotu False. ISSUBTOTAL možno použiť iba v rámci výrazu SUMMARIZE.

Príklad

Nasledujúca ukážka vygeneruje stĺpec ISSUBTOTAL pre každý zo stĺpcov ROLLUP v danom volaní funkcie SUMMARIZE:

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])
)

Vráti nasledujúcu tabuľku,

[Is Sub Total for DateTimeCalendarYear] [Is Sub Total for ProductCategoryName] DateTime[KalendárnyRok] ProductCategory[NázovKategórieProduktov] [Sales Amount (USD)] [Discount Amount (USD)]
FALSE FALSE
FALSE FALSE 2008 Bicykle 12968255.42 36167.6592
FALSE FALSE 2005 Bicykle 6958251.043 4231.1621
FALSE FALSE 2006 Bicykle 18901351.08 178175.8399
FALSE FALSE 2007 Bicykle 24256817.5 276065.992
FALSE FALSE 2008 Súčasti 2008052.706 39.9266
FALSE FALSE 2005 Súčasti 574256.9865 0
FALSE FALSE 2006 Súčasti 3428213.05 948.7674
FALSE FALSE 2007 Súčasti 5195315.216 4226.0444
FALSE FALSE 2008 Oblečenie 366507.844 4151.1235
FALSE FALSE 2005 Oblečenie 31851.1628 90.9593
FALSE FALSE 2006 Oblečenie 455730.9729 4233.039
FALSE FALSE 2007 Oblečenie 815853.2868 12489.3835
FALSE FALSE 2008 Príslušenstvo 153299.924 865.5945
FALSE FALSE 2005 Príslušenstvo 18594.4782 4.293
FALSE FALSE 2006 Príslušenstvo 86612.7463 1061.4872
FALSE FALSE 2007 Príslušenstvo 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

SUMMARIZECOLUMNS