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

如何在KQL中拆分聚合列allVM为前100个与剩余元素的两个列表?

拆分Kusto聚合列表为前100项与剩余项的实现方案

可以通过在原查询的summarize阶段后添加extend语句,结合Kusto的数组操作函数来实现需求。以下是修改后的完整查询:

Table
| where type == "TYPE"
| summarize 
    lastEventTime = arg_max(lastEvent, *), 
    vmCount = count(),  
    onboardedCount = countif(onboarded), 
    failVM = make_list_if(entity, onboarded == false and isnotempty(entity)), 
    allVM = make_set(entity) 
by environmentType, osType, id , type
| extend 
    allVM1 = take(allVM, 100),
    allVM2 = iif(array_length(allVM) > 100, skip(allVM, 100), dynamic([]))

关键逻辑说明:

  • take(allVM, 100):直接提取allVM数组的前100个元素,如果数组元素总数不足100,会返回全部现有元素。
  • iif(array_length(allVM) > 100, skip(allVM, 100), dynamic([])):先判断allVM的元素数量是否超过100:
    • 超过时,用skip(allVM, 100)跳过前100个元素,返回剩余部分;
    • 未超过时,返回空动态数组dynamic([])。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 12:34:57