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

如何在Cosmos DB中通用查询含failed状态的子项数据

Cosmos DB 查询动态子项中status为'failed'的通用方法

你可以利用Cosmos DB的数组查询能力实现通用筛选,无需手动枚举子项键名,以下是两种实用方案:

方案1:仅筛选包含失败子项的文档

使用ARRAY_CONTAINS配合子查询提取所有子项的status值,判断是否存在'failed':

SELECT *
FROM root
WHERE ARRAY_CONTAINS(ARRAY(SELECT VALUE c.status FROM c IN root.object_results), 'failed')

这个查询会自动遍历object_results下的所有子项,无需关心子项的数量或键名,只要有任意子项的status为'failed',就会返回该文档。

方案2:筛选文档同时返回失败子项

如果需要在返回结果中单独列出所有失败的子项,可以用子查询筛选并结合ARRAY_LENGTH做判断:

SELECT root.id,
       ARRAY(SELECT * FROM c IN root.object_results WHERE c.status = 'failed') AS failed_subitems
FROM root
WHERE ARRAY_LENGTH(ARRAY(SELECT * FROM c IN root.object_results WHERE c.status = 'failed')) > 0

该查询不仅会过滤出包含失败子项的文档,还会将所有符合条件的子项整理到failed_subitems数组中,方便后续处理。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 04:12:04