Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Syntax
Table.Group(
table as table,
key as any,
aggregatedColumns as list,
optional groupKind as nullable number,
optional comparer as nullable function
) as table
Info
Gruppiert die Zeilen von table nach den durch key definierten Schlüsselspalten.
key kann entweder ein einzelner Spaltenname oder eine Liste mit Spaltennamen sein. Für jede Gruppe wird ein Datensatz erstellt, der die Schlüsselspalten (und deren Werte) zusammen mit allen durch aggregatedColumns angegebenen aggregierten Spalten enthält. Optional können zusätzlich groupKind und comparer angegeben werden.
Wenn die Daten bereits nach den Schlüsselspalten sortiert sind, kann ein groupKind GroupKind.Local bereitgestellt werden. Dies kann in bestimmten Fällen die Leistung der Gruppierung verbessern, weil alle Zeilen mit einem bestimmten Satz von Schlüsselwerten als zusammenhängend betrachtet werden.
Beachten Sie beim Übergeben von comparer Folgendes: Wenn unterschiedliche Schlüssel als gleich behandelt werden, kann eine Zeile in einer Gruppe platziert werden, deren Schlüssel sich von ihren eigenen unterscheiden.
Diese Funktion garantiert nicht die Reihenfolge der zurückgegebenen Zeilen.
Beispiel 1
Gruppieren Sie die Tabelle, indem Sie eine Aggregationsspalte [Summe] einfügen, die die Summe der Preise enthält ("jeweils List.Sum([Preis])").
Verwendung
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])}
)
Output
Table.FromRecords(
{
[CustomerID = 1, total = 30],
[CustomerID = 2, total = 30],
[CustomerID = 3, total = 25]
},
{"CustomerID", "total"}
)