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

如何通过MongoDB Data API(POST请求)查询带过滤条件的文档数量?

可以通过MongoDB Data API查询带过滤条件的文档数量

你完全可以用两种方式实现这个需求,官方文档只是没单独给出计数示例而已:

方式1:使用聚合管道

通过aggregate操作,先通过$match过滤目标文档,再用$count阶段统计数量。POST请求体示例如下:

{
  "collection": "your-collection-name",
  "database": "your-database-name",
  "dataSource": "your-cluster-name",
  "pipeline": [
    { "$match": { "your-field": "your-filter-value" } }, // 替换成你的过滤条件
    { "$count": "totalDocuments" }
  ]
}

请求成功后,响应会返回类似[{ "totalDocuments": 42 }]的结果,其中totalDocuments的值就是符合条件的文档总数。

方式2:使用find操作并指定计数参数

直接调用find接口,设置limit: 0(不返回具体文档),同时开启count: true参数来获取总数。POST请求体示例:

{
  "collection": "your-collection-name",
  "database": "your-database-name",
  "dataSource": "your-cluster-name",
  "filter": { "your-field": "your-filter-value" }, // 替换成你的过滤条件
  "limit": 0,
  "count": true
}

这种方式的响应会包含count字段,比如{ "documents": [], "count": 42 },count的值就是你要的数量。

这两种方式都是MongoDB Data API原生支持的,逻辑和MongoDB数据库本身的计数、聚合操作完全一致,只是官方文档没单独做示例说明而已。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 08:55:12