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

Kusto中如何直接索引extract_all()返回的字符串数组的数组?

Kusto extract_all() 结果索引的最优方案

核心结论

直接使用多维索引(如 match[0][0]、match[0][1])就是处理 extract_all() 返回的数组数组最简洁、最优的方案,完全不需要 mvexpand 或临时列。

细节说明

  1. 类型本质:extract_all() 返回的是 dynamic 类型的数组数组,Kusto 原生支持对这种类型直接进行多维索引操作,不需要额外的 parse_json() 转换(除非你处理的是字符串形式的数组文本,但 extract_all() 的返回值本身就是动态类型)。
  2. UI 语法错误的原因:Kusto.Explorer 的语法检查器存在假阳性局限,会误判合法的多维索引表达式,但实际执行时引擎是完全支持并能正确返回结果的,这个报错可以忽略。

示例查询

datatable(input_str:string)
[
    "id:123 name:Alice",
    "id:456 name:Bob"
]
| extend matches = extract_all(@"(\w+):(\w+|\d+)", input_str)
| extend first_field = matches[0][0], first_value = matches[0][1]

上述查询中,matches[0][0] 直接提取第一组匹配的字段名,matches[0][1] 提取对应值,无需额外转换或展开操作。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 09:27:07