这两个命令有什么区别?
db.collection.explain().find()
db.collection.find().explain()
答案 0 :(得分:2)
运行db.collection.explain()会返回一个对象,该对象可用于生成聚合,计数,查找,分组,删除和更新操作的解释计划。从MongoDB 3.0开始,这是生成解释计划的首选方法。
提供cursor.explain(允许db.collection.find()。explain()运行)主要是为了向前兼容3.0之前的MongoDB版本。这将生成与db.collection.explain()相同的解释输出,但仅限于查找操作。
如果所有其他内容都相同,我建议使用支持更多操作的db.collection.explain()。