Table.Group
構文
Table.Group(table as table, key as any, aggregatedColumns as list, optional groupKind as nullable number, optional comparer as nullable function) as table
バージョン情報
key
によって定義されたキー列によって table
の行をグループ分けします。 key
には、1 つの列名または列名のリストを指定できます。 各グループについて、aggregatedColumns
によって指定された集計列と共に、キー列 (およびその値) を含むレコードが作成されます。 必要に応じて、groupKind
と comparer
を指定することもできます。
データがキー列によって既に並べ替え済みの場合は、GroupKind.Local の groupKind
を指定できます。 これにより、特定のキー値のセットを持つすべての行が連続すると見なされるので、特定の場合にグループ化のパフォーマンスが向上する可能性があります。
comparer
を渡すとき、異なるキーが同等に処理される場合は、キーが自身のキーとは異なるグループに行が配置される可能性があることに注意してください。
この関数では、返される行の順序は保証されません。
例 1
テーブルをグループ化し、価格の合計 ("each List.Sum([price])") を含む集計列 [total] を追加します。
使用方法
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])}
)
出力
Table.FromRecords(
{
[CustomerID = 1, total = 30],
[CustomerID = 2, total = 30],
[CustomerID = 3, total = 25]
},
{"CustomerID", "total"}
)