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