如何使用KQL的.set-or-append命令批量插入多行数据?
Kusto .set-or-append 多行插入方法
.set-or-append 命令完全支持多行数据插入,以下是针对你需求的具体操作方式:
直接构造多行数据插入
如果是固定的两台机器数据,用 datatable 构造数据是最直接的方式。假设你的目标表包含MachineName(字符串类型)、MetricValue(数值类型)、Timestamp(时间类型)这类字段,替换成你实际的表名和字段即可:
.set-or-append YourTargetTable <| datatable(MachineName:string, MetricValue:int, Timestamp:datetime) [ "IQVIA", 95, datetime(2024-05-20 14:30:00), "GENE_S", 88, datetime(2024-05-20 14:31:00) ]
注意:字段的名称、类型、数量必须和目标表完全匹配,每一行数据用逗号分隔,所有行放在方括号内。
从现有查询结果插入多行
如果数据来自其他Kusto查询(比如从另一张表筛选出这两台机器的记录),可以直接将查询结果导入目标表:
.set-or-append YourTargetTable <| SourceTable | where MachineName in ("IQVIA", "GENE_S") | project MachineName, MetricValue, Timestamp // 确保输出字段和目标表匹配
关键注意事项
- 执行命令前需确认你拥有目标表的
Ingestor权限。 - 插入数据的字段结构必须与目标表严格一致,否则会触发数据类型不匹配的错误。
内容的提问来源于stack exchange,提问作者Swathi Miney
相关产品推荐
相关产品推荐

