我问这个问题是明智的选择-知道有一个ui.draggable.find('.employee_name').html()
的唯一文档。
id
vs
MyCollection.find({_id: id}) //this should return only one document - id is unique
我的第一个想法是,无论过滤器如何,MyCollection.findOne({_id: id}) //this is equivalent to .find({_id: id}).limit(1) from what I've read
都必须经过集合,因此.find
在我只想检索一个文档的情况下会更快,对吗?还是因为.findOne
总是被索引,也许没有区别?
我不是在问函数的输出,这是一个优化/性能问题。
答案 0 :(得分:1)
在这种特殊情况下,没有性能差异(因为唯一索引,所以是)。
可能存在响应形状差异。我不熟悉mongoose,但是在mongodb shell中,find()
返回一个游标(立即枚举),而findOne()
直接返回该文档。