Aracılığıyla paylaş


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ı, table ile tanımlanan anahtar sütunlara göre key üzerinde gruplandırır. key tek bir sütun adı veya sütun adlarının listesi olabilir. Her grup için, aggregatedColumns tarafından belirtilen her türlü toplam sütunun yanı sıra anahtar sütunu (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 için bir 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.

Bir comparer geçirirken, eğer farklı anahtarları eşit olarak değerlendiriyorsa, anahtarları kendisinden farklı bir grubun içine 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 [toplam] ekleyerek tabloyu gruplandırın ("her List.Sum([fiyat])").

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

Çıktı

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

Karşılaştırıcı işlevleri