适用于: Copilot Studio
Desktop 流
Power Platform CLI
Dataverse 函数
Description
使用该 Summarize 函数对表的记录进行分组,并汇总组中的列。
要作的第一个参数 Summarize 是要作的表。 其余参数可以按任意顺序排列,分为两类:
- 对列名称进行分组。 使用这些选项指定要分组的列。
- 摘要公式。 使用这些来汇总 ThisGroup 表中的 列。 ThisGroup 是一个包含原始表的所有列的表,但根据组列,一次只能包含一个组的记录。 每个公式都必须在结果表中使用 As 作为列名命名。
表是 Power Apps 中的一个值,与字符串或数字类似。 可以指定一个表作为函数的自变量,然后函数可返回一个表。 Summarize 不修改表;而是采用表作为参数并返回另一个表。 更多详细信息,请参阅使用表。
代理
Summarize 可以根据数据源和汇总公式的复杂性委托。 基本的聚合函数(如 Sum、 Average、 Max、 Min、 CountRows 和 Concat )很有可能被委托。
如果无法完全委派公式,则创作环境会标记无法委派的部分,并显示警告。 如果可能,请考虑更改公式以避免出现无法委派的函数和运算符。
有关更多信息,请参阅 委托概述。
语法
Summarize( Table、 GroupByColumnName1 [, GroupByColumnName2, ... ][, SummarizeColumns As SummarizeNames, ...])
- Table - 必需。 表待总结。
- GroupByColumnNames - 至少需要一个。 作为记录分组依据的表中的列名称。 这些列将变为生成的表中的列。
- SummarizeColumns - 可选。 每个组的 ThisGroup 表的汇总公式。
- SummarizeNames - 每个 SummarizeColumn 都需要。 必须为输出表显式命名每个汇总列。
示例
简单示例
- 使用以下示例数据在主机 Power Fx 中创建一个表:
Set( CityPopulations,
Table(
{ City: "London", Country: "United Kingdom", Population: 8615000},
{ City: "Berlin", Country: "Germany", Population: 3562000},
{ City: "Madrid", Country: "Spain", Population: 3165000},
{ City: "Rome", Country: "Italy", Population: 2874000},
{ City: "Paris", Country: "France", Population: 2273000},
{ City: "Hamburg", Country: "Germany", Population: 1760000},
{ City: "Barcelona", Country: "Spain", Population: 1602000},
{ City: "Munich", Country: "Germany", Population: 1494000},
{ City: "Milan", Country: "Italy", Population: 1344000}
)
)
- 计算以下公式:
Summarize( CityPopulations, Country,
Sum( ThisGroup, Population ) As 'Total Population',
Concat( ThisGroup, City, ", " ) As Cities
)
结果如下表:
| 国家/地区 | 总人口 | 城市 |
|---|---|---|
| 英国 | 8615000 | 伦敦 |
| 德国 | 6816000 | 柏林,汉堡,慕尼黑 |
| 西班牙 | 4767000 | 马德里,巴塞罗那 |
| 意大利 | 4218000 | 罗马,米兰 |
| 法国 | 2273000 | 巴黎 |
多个组列
- 使用以下示例数据在主机 Power Fx 中创建一个表:
Set( Inventory,
Table(
{Supplier:"Contoso", Fruit:"Grapes", Price:220, Purchase:Date(2015,10,1), Tags: ["Red","Seedless"]},
{Supplier:"Fabrikam", Fruit:"Lemons", Price:31, Purchase:Date(2015,10,1), Tags: ["Colombia"]},
{Supplier:"Contoso", Fruit:"Lemons", Price:29, Purchase:Date(2015,10,2), Tags: ["Peru"]},
{Supplier:"Contoso", Fruit:"Grapes", Price:210, Purchase:Date(2015,10,2), Tags: ["Green","Seedless"]},
{Supplier:"Fabrikam", Fruit:"Lemons", Price:30, Purchase:Date(2015,10,3), Tags: ["Mexico","Seedless"]},
{Supplier:"Contoso", Fruit:"Bananas", Price:12, Purchase:Date(2015,10,3), Tags: ["Mexico"]}
)
)
- 计算以下公式:
Summarize( Inventory, Supplier, Fruit, Average( ThisGroup, Price ) As 'Average Price' )
| 水果 | 供应商 | 餐点平均价格 |
|---|---|---|
| 葡萄 | Contoso | 215 |
| 柠檬 | Fabrikam | 30.5 |
| 柠檬 | Contoso | 29 |
| 香蕉 | Contoso | 12 |