Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Синтаксис
Table.Group(table as table, key as any, aggregatedColumns as list, optional groupKind as nullable number, optional comparer as nullable function) as table
О программе
Группирует строки table
по ключевым столбцам, определенным key
. Это key
может быть имя одного столбца или список имен столбцов. Для каждой группы создается запись, содержащая ключевые столбцы (и их значения), а также все агрегированные столбцы, указанные в aggregatedColumns
. При желании можно также указать groupKind
и comparer
.
Если данные уже отсортированы по ключевым столбцам, можно указать параметр groupKind
GroupKind.Local. Это может повысить производительность группировки в определенных случаях, так как предполагается, что все строки с заданным набором значений ключей являются смежными.
При передаче comparer
, обратите внимание, что если алгоритм обрабатывает разные ключи как равные, строка может быть помещена в группу с ключами, отличающимися от её собственных.
Эта функция не гарантирует порядок возвращаемых строк.
Пример 1
Сгруппировать таблицу, добавив статистический столбец [total], содержащий сумму цен ("каждый List.Sum([цена])").
Использование
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"}
)