如何在KQL中将表格转换为以两列唯一值定义行列的表格?
用KQL实现表格行转列转换
可以通过KQL的pivot()函数实现这种行转列的表格结构转换,以下是具体实现方法:
原数据结构(示例表名:AppVersions)
| Computer | AppName | AppVersion |
|---|---|---|
| C1 | App1 | 1.0 |
| C1 | App2 | 2.0 |
| C2 | App1 | 3.0 |
| C2 | App2 | 4.0 |
| C3 | App1 | 5.0 |
| C3 | App2 | 6.0 |
目标数据结构
| Computer | App1 | App2 |
|---|---|---|
| C1 | 1.0 | 2.0 |
| C2 | 3.0 | 4.0 |
| C3 | 5.0 | 6.0 |
KQL查询语句
AppVersions | pivot(AppName, any(AppVersion))
说明
pivot()函数第一个参数指定要转为列的字段(此处为AppName),第二个参数是聚合函数,用于提取对应列的值。由于每个Computer与AppName的组合对应唯一AppVersion,使用any()或take_any()即可满足需求,也可选用max()/min()(结果一致)。- 若表中存在同一电脑同一应用对应多个版本的情况,可根据需求选择合适的聚合函数(如用
max()获取最新版本)。
内容的提问来源于stack exchange,提问作者Darien Pardinas
相关产品推荐
相关产品推荐

