使用 countDocuments() 方法可查询 MongoDB 中符合条件的记录数,语法为 db.collection.countDocuments(, ),如统计 users 集合中 status 为 "active" 的文档数量:db.users.countDocuments({ status: "active" }),推荐此方法替代已弃用的 count()。

在 MongoDB 中,想要查询符合条件的记录数,可以使用 countDocuments() 方法。这是目前推荐的方式,用来统计集合中满足条件的文档数量。
基本语法
db.collection.countDocuments(参数说明:
- query:可选,查询条件。如果不传,默认统计全部文档。
- options:可选,配置项,比如设置读取偏好等。
常见用法示例
统计整个集合的文档总数:
db.users.countDocuments({})统计满足条件的文档数量(例如 status 为 "active" 的用户):
db.users.countDocuments({ status: "active" })带复杂条件的统计(例如 status 为 "active" 且 age 大于 25):
功能说明: 1、自带两款企业、个人模板; 2、使用模板生成前台静态htm页面; 3、可自设网站栏目、文章分类; 4、提供用户注册、审核模块(可选是否开放); 5、提供留言模块,以及游客留言(均可选); 6、新增用户站长Mail通知; 7、用户访问记录以及用户下载记录,在线人数显示; 8、文章、栏目日、月、总浏览计数; 9、来访者IP来源查询、更新(请到本站主页下载IP数据库放到Data目录下);
与旧方法 count() 的区别
MongoDB 曾经支持 count() 方法,例如:
db.users.count({ status: "active" })但该方法已在较新版本中被弃用。官方建议统一使用 countDocuments(),因为它更准确、性能更好,并且符合当前驱动和 API 的规范。
如果使用的是聚合场景,也可以用 aggregate() 配合 $count 或 $group 实现:
db.users.aggregate([{ $match: { status: "active" } },
{ $count: "total" }
])
这种方式适合在复杂数据处理流程中使用。
基本上就这些。日常统计优先用 countDocuments(),清晰又可靠。









