Share via


Table.Group

Sözdizimi

Table.Group(table as table, key as any, aggregatedColumns as list, optional groupKind as nullable number, optional comparer as nullable function) as table

Hakkında

satırlarını table tarafından tanımlanan anahtar sütunlarına göre gruplandırın key. key tek bir sütun adı veya sütun adlarının listesi olabilir. Her grup için, tarafından aggregatedColumnsbelirtilen tüm toplanmış sütunlarla birlikte anahtar sütunlarını (ve değerlerini) içeren bir kayıt oluşturulur. İsteğe bağlı olarak groupKind ve comparer de belirtilebilir.

Veriler zaten anahtar sütunlara göre sıralanmışsa GroupKind.Local groupKind sağlanabilir. Belirli bir anahtar değerleri kümesine sahip tüm satırların bitişik olduğu varsayıldığından, bu durum belirli durumlarda gruplandırma performansını artırabilir.

geçirirken comparer, farklı anahtarları eşit olarak ele alırsa, anahtarları kendilerinden farklı olan bir gruba bir satır yerleştirilebileceğini unutmayın.

Bu işlev, döndürdüğü satırların sırasını garanti etmez.

Örnek 1

Fiyatların toplamını içeren bir toplama sütunu [total] ekleyerek tabloyu gruplandırın ("her List.Sum([price])").

Kullanım

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

Çıkış

Table.FromRecords(
    {
        [CustomerID = 1, total = 30],
        [CustomerID = 2, total = 30],
        [CustomerID = 3, total = 25]
    },
    {"CustomerID", "total"}
)