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

如何利用数据表中的ID列表过滤目标结果集?

用数据表ID集合过滤大型表的正确方法

你之前的查询报错,是因为contains是字符串包含运算符,不能直接用来关联两张表的列,且语法不符合Kusto的查询规则。以下是两种可行的解决方式:

方法一:使用in运算符匹配集合

通过project提取收藏ID列,再用in判断目标表的Id是否在该集合中:

let favoriteIds = datatable (identifier: double) [123, 234, 356, 789];
HugeTable | where Id in (favoriteIds | project identifier)

如果两张表的ID数据类型不一致(比如HugeTable的Id是int,favoriteIds的identifier是double),需要统一类型:

let favoriteIds = datatable (identifier: double) [123, 234, 356, 789];
HugeTable | where todouble(Id) in (favoriteIds | project identifier)

方法二:使用join操作(适合大数据量场景)

通过内连接(inner join)只保留两边ID匹配的行,性能通常更优:

let favoriteIds = datatable (identifier: double) [123, 234, 356, 789];
HugeTable
| join kind=inner favoriteIds on $left.Id == $right.identifier
| project-away identifier  // 若不需要保留identifier列可执行此步骤

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 02:47:11