You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Kusto查询中将行计数结果转换为另一列

Kusto查询实现:按Name汇总薪资并添加总行数列

需求说明

从给定数据表中,按Name汇总薪资总和,同时在每行添加一列显示汇总结果的总行数(示例中为5)。

解决方案

使用Kusto的let语句存储中间结果,再通过toscalar获取总行数并添加为新列:

// 定义原始数据表
let source_data = datatable(Name: string, salary: int) 
[
    "a", 500,
    "a", 500,
    "b", 600, 
    "b", 600, 
    "c", 800, 
    "d", 1900,
    "e", 200
];

// 按Name汇总薪资总和
let aggregated_data = source_data
| summarize TotalSalary = sum(salary) by Name;

// 添加总行数列
aggregated_data
| extend RowCount = toscalar(aggregated_data | count)

输出结果

NameTotalSalaryRowCount
"a"10005
"b"12005
"c"8005
"d"19005
"e"2005

关键步骤说明

  1. 存储原始数据:用let定义source_data,避免重复编写数据表结构。
  2. 按Name汇总薪资:通过summarize sum(salary) by Name计算每个Name的薪资总和,得到汇总后的数据集。
  3. 添加总行数列:使用toscalar(aggregated_data | count)获取汇总结果的总行数,再通过extend将这个值添加为每行的RowCount列。

内容的提问来源于stack exchange,提问作者Born2Code

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 08:42:03