首页/数据/NoSQL 速查/explain 解读查询计划
本包目录(322 条)
MongoDB99 条
Elasticsearch89 条ClickHouse56 条时序与列式28 条选型与架构50 条

explain 解读查询计划

explain("executionStats") 展示索引选择与执行统计:重点看 winningPlan 的阶段(IXSCAN/COLLSCAN)以及扫描文档数与返回数之比。

NoSQL 速查数据更新于 2026-10-12
语法db.collection.find(...).explain("executionStats")
关键字段winningPlan.stage / totalKeysExamined / totalDocsExamined / nReturned
判断标准docsExamined 接近 nReturned 说明过滤高效

示例

示例
db.orders.find({ status: "paid" }).explain("executionStats")
db.orders.aggregate([{ $match: { status: "paid" } }], { explain: true })
聚合管道用 { explain: true } 选项或在管道里加 $explain 观察,重点确认 $match 是否被推入索引扫描。

易错点

  • 看到 IXSCAN 不代表高效:totalDocsExamined 远大于 nReturned 时索引选择性仍然差
  • executionStats 只反映当次执行,缓存冷热会影响耗时数字,看扫描量比看毫秒更稳

数据来源与参考

  • MongoDB Manual: explain Results
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌