Lue englanniksi

Jaa


GROUPBY

Koskee seuraavia:Laskettu sarakeLaskettu taulukkoMeasureVisuaalinen laskutoimitus

Huomautus

Tätä funktiota ei suositella käytettäväksi visuaalisissa laskutoimituksissa, koska se todennäköisesti palauttaa merkityksettömiä tuloksia.

GROUPBY-funktio on samankaltainen kuin SUMMARIZE funktio. GROUPBY kuitenkin tekee not implisiittisen CALCULATE kaikille lisäämilleen laajennussarakkeille. GROUPBY sallii uuden CURRENTGROUP-funktion käytön koostamisfunktioiden sisällä lisäämissään laajennussarakkeissa. GROUPBY käytetään useiden koosteiden suorittamiseen yksittäisessä taulukon tarkistuksessa.

Syntaksi

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

Parametrit

Termi Määritelmä
table Mikä tahansa tietotaulukon palauttava DAX lauseke.
groupBy_columnName Taulukon olemassa olevan sarakkeen nimi (orrelated taulukossa),), jonka mukaan tiedot ryhmitetään. Tämä parametri ei voi olla lauseke.
name Uudelle sarakkeelle annettu nimi, joka lisätään GroupBy-sarakkeiden luetteloon lainausmerkeissä.
expression Yksi X-koostefunktioista, jonka first-argumentti on CURRENTGROUP(). Katso alla olevasta CURRENTGROUP -osiosta täydellinen luettelo tuetuista X-koostefunktioista.

Palauta value

Taulukko, jossa on valitut sarakkeet groupBy_columnName-argumenteille, and nimiargumenttien nimeämät laajennussarakkeet.

Huomautuksia

  • GROUPBY toimii seuraavasti:

    1. Aloita määritetyllä taulukolla (andallrelated taulukot "yhteen"-suunnassa).

    2. Luo ryhmittely käyttämällä GroupBy-sarakkeiden all (joita taulukossa täytyy olla vaiheesta 1 alkaen).

    3. Jokainen ryhmä on tuloksessa yksi rivi, mutta edustaa rivijoukkoa alkuperäisessä taulukossa.

    4. evaluate kullekin ryhmälle lisättävät laajennussarakkeet. toisin kuin SUMMARIZE-funktiossa, tässä not suoritetaan implisiittinen CALCULATE, and ryhmää ei sijoiteta filter kontekstiin.

  • Jokaisella sarakkeella, jolle define nimen, on oltava vastaava lauseke. muussa tapauksessa palautetaan error. first argumentti, nimi, määrittää sarakkeen nimen tuloksissa. second argumentti, lauseke, määrittää laskennan, joka suoritetaan value saamiseksi kullekin riville kyseisessä sarakkeessa.

  • groupBy_columnName on oltava joko related taulukon or.

  • Kukin nimi on kirjoitettava lainausmerkkeihin.

  • Funktio ryhmittelee valitun rivijoukon yhteenvetorivien joukoksi yhden or groupBy_columnName sarakkeen values mukaan. Kullekin ryhmälle palautetaan yksi rivi.

  • GROUPBY käytetään ensisijaisesti koostamiseen DAX taulukkolausekkeiden välituloksista. Mallin fyysisten taulukoiden tehokkaaseen koostamiseen kannattaa käyttää SUMMARIZECOLUMNSorSUMMARIZE funktiota.

  • Tätä funktiota not tueta DirectQuery-tilassa, kun sitä käytetään lasketuissa sarakkeissa or rivitason suojauksen (RLS) säännöissä.

CURRENTGROUP kanssa

CURRENTGROUP voidaan käyttää vain lausekkeessa, joka määrittää laajennussarakkeen GROUPBY-funktion sisällä. In-effect, CURRENTGROUP palauttaa joukon rivejä GROUPBY taulukkoargumentista, jotka kuuluvat GROUPBY tuloksen nykyiseen riviin. CURRENTGROUP-funktio ei saa argumentteja, and tuetaan vain first argumenttina yhteen seuraavista koostamisfunktioista: AVERAGEX, COUNTAX, COUNTX, GEOMEANX, MAXX, MINX, PRODUCTX, STDEVX.S, STDEVX.P, SUMX, VARX.S, VARX.P.

Esimerkki

Seuraavassa esimerkissä first laskee maan mukaan ryhmitellyn kokonaismyynnin andproduct fyysisille taulukoille käyttämällä SUMMARIZECOLUMNS-funktiota. Sen jälkeen se käyttää GROUPBY funktiota välituloksen skannaamiseen first vaiheesta, jotta se find kunkin maan maksimimyynnin product luokissa.

DEFINE  
VAR SalesByCountryAndCategory =  
SUMMARIZECOLUMNS(  
Geography[Country],
Product[Category],
"Total Sales", SUMX(Sales, Sales[Price] * Sales[Qty])  
)  
  
EVALUATE
GROUPBY(  
SalesByCountryAndCategory,
Geography[Country],
"Max Sales", MAXX(CURRENTGROUP(), [Total Sales])  
)  

SUMMARIZE-funktion
SUMMARIZECOLUMNS-funktion