Table.Group
Syntaksi
Table.Group(table as table, key as any, aggregatedColumns as list, optional groupKind as nullable number, optional comparer as nullable function) as table
Tietoja
Ryhmittelee kohteen rivit table
kohteen määrittämien avainsarakkeiden mukaan key
. key
voi olla joko yhden sarakkeen nimi tai sarakenimien luettelo. Kullekin ryhmälle muodostetaan tietue, joka sisältää avainsarakkeet (ja niiden arvot) sekä kohteen aggregatedColumns
määrittämät mahdolliset koostesarakkeet. Valinnaisesti groupKind
myös ja comparer
voidaan määrittää.
Jos tiedot on jo lajiteltu avainsarakkeiden mukaan, voit antaa osan groupKind
GroupKind.Localista. Tämä saattaa parantaa ryhmittelyn tehokkuutta tietyissä tapauksissa, koska kaikkien sellaisten rivien, joilla on tietty avainarvojoukko, oletetaan olevan peräkkäin.
Kun välitetään comparer
, ota huomioon, että jos eri avaimia käsitellään samanarvoisina, ryhmään voidaan sijoittaa rivi, jonka avaimet eroavat omista avaimista.
Tämä funktio ei takaa palauttamiensa rivien järjestystä.
Esimerkki 1
Ryhmittele taulukko lisäämällä koostesarake [total], joka sisältää hintojen summan ("each List.Sum([price])").
Käyttö
Table.Group(
Table.FromRecords({
[CustomerID = 1, price = 20],
[CustomerID = 2, price = 10],
[CustomerID = 2, price = 20],
[CustomerID = 1, price = 10],
[CustomerID = 3, price = 20],
[CustomerID = 3, price = 5]
}),
"CustomerID",
{"total", each List.Sum([price])}
)
Tuloste
Table.FromRecords(
{
[CustomerID = 1, total = 30],
[CustomerID = 2, total = 30],
[CustomerID = 3, total = 25]
},
{"CustomerID", "total"}
)