MongoDB 中 find() 和 findOne() 方法之间的区别?
如果查询匹配, 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
广告