使用db.collection.find('stuff'{projection})
vs db.collection.find('stuff').select({'keyWeWant'})
时是否存在差异或性能损失?
我已经在文档上挣扎了一段时间,但找不到任何有用的东西。
答案 0 :(得分:1)
我建议检查$ explain,你会发现实际的查询执行。我相信内部会相同
https://docs.mongodb.org/manual/reference/operator/meta/explain/
答案 1 :(得分:0)
您能否解释一下您正在使用哪种语言,因为语法
db.collection.find('stuff').select({'keyWeWant'})
是我不知道的事情。
对于你的问题: 使用投影仅返回投影中包含的字段,这样您将节省网络。您可以进一步利用它并创建一个所谓的覆盖索引,它包含查询键和投影键,因此您可以直接从索引获取数据,这将是一个严重的性能提升。 当然,向索引添加大量数据会损害该方面的表现,因此明智地选择你的战斗
此致 克里斯