MongoDB 中 find() 和 findOne() 方法的区别?

mongodbdatabasebig data analytics更新于 2026/1/16 18:22:17

如果查询匹配,findOne() 返回第一个文档,否则返回 null。find() 方法不返回 null,而是返回一个游标。

让我们实现 find() 和 findOne() 的概念,并创建一个包含文档的集合 −

> db.createCollection('emptyCollection');
{ "ok" : 1 }

让我们计算一下上述集合中有多少个文档 −

> db.emptyCollection.count();

将产生以下输出 −

0

上述集合中没有文档。

以下是使用 findOne() 检查结果的查询 −

> if(db.emptyCollection.findOne()){print("Returns Cursor")} else {print("Not returning cursor")}

将产生以下输出 −

Not returning cursor

以下是使用 find() −

> if(db.emptyCollection.find()){print("Returns Cursor")} else {print("Not returning cursor")}

这将产生以下输出 −

Returns Cursor

相关文章