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

如何在Kusto查询中逐行调用tabular函数处理全表数据

Kusto逐行传参调用自定义函数实现方法

根据你的使用场景,分两种情况实现即可:

  • 如果你的Function1是标量函数(传入参数返回单个值),直接通过extend调用即可,会自动逐行传入对应列的值计算结果:
// 已修正原示例中start、end字段类型声明不匹配的问题
datatable(id:string, start:datetime, end:datetime)
[
   'Z213',datetime(2021-08-06T02:12:37.1597030Z),datetime(2021-08-06T17:37:21.8962890Z),
  'Z213',datetime(2021-08-06T00:00:25.7896310Z),datetime(2021-08-06T01:59:50.1172850Z),
  'Z213',datetime(2021-08-06T02:04:37.1243340Z),datetime(2021-08-06T02:12:37.1352020Z),
  'Z213',datetime(2021-08-06T17:45:19.7289570Z),datetime(2021-08-06T23:56:44.8047730Z),
  'Z213',datetime(2021-08-06T17:43:23.7238020Z),datetime(2021-08-06T17:43:28.7256000Z),
  'Z213',datetime(2021-08-06T02:04:17.1238770Z),datetime(2021-08-06T02:04:24.1256730Z),
  'Z213',datetime(2021-08-06T02:02:15.1199760Z),datetime(2021-08-06T02:02:15.1204780Z),
]
| extend function_result = Function1(id, start, end)
  • 如果你的Function1是表值函数(传入参数返回表结构),需要开启行上下文调用,写法如下:
datatable(id:string, start:datetime, end:datetime)
[
   'Z213',datetime(2021-08-06T02:12:37.1597030Z),datetime(2021-08-06T17:37:21.8962890Z),
  'Z213',datetime(2021-08-06T00:00:25.7896310Z),datetime(2021-08-06T01:59:50.1172850Z),
  'Z213',datetime(2021-08-06T02:04:37.1243340Z),datetime(2021-08-06T02:12:37.1352020Z),
  'Z213',datetime(2021-08-06T17:45:19.7289570Z),datetime(2021-08-06T23:56:44.8047730Z),
  'Z213',datetime(2021-08-06T17:43:23.7238020Z),datetime(2021-08-06T17:43:28.7256000Z),
  'Z213',datetime(2021-08-06T02:04:17.1238770Z),datetime(2021-08-06T02:04:24.1256730Z),
  'Z213',datetime(2021-08-06T02:02:15.1199760Z),datetime(2021-08-06T02:02:15.1204780Z),
]
| invoke Function1(row_ctx(id, start, end))

如果需要保留原表的id、start、end字段,可改用mv-apply写法:

| mv-apply function_output = Function1(id, start, end) on (
    project function_output
)

注意:调用函数前请确认函数入参类型和表对应列的类型完全一致,不一致的话先通过tostring()/todatetime()等函数做类型转换再传参。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 01:54:03