u012453843
在京奋斗者
2018-03-01 10:03
采纳率: 100%
浏览 1.2k

mongodb执行计划和实际查询执行结果不一致

mongodb使用explain执行计划所查看到的信息中使用了索引,但是接口调用时真正执行查询时却没有使用索引,请大仙帮忙解答一下,谢谢

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • oyljerry
    oyljerry 2018-03-01 13:09
    已采纳

    执行计划中有没有多个可选的执行。是不是选择了最佳方案里有索引等

    点赞 评论
  • peiwx
    peiwx 2018-03-02 05:41

    同样遇到相同的问题,问题的关键 explain 中winningPlan是带有索引的,而真实的日志打印中没有索引。
    语句 db.document.find({uid:3306,s:1}).sort({_id:-1}).limit(20)
    主键 id 索引:uid。
    执行计划winningPlan里 fetch是用到uid的,但是真实的执行打印的日志中却没有使用uid的索引

    点赞 评论
  • RedFox_Forum
    RedFox_Forum 2018-07-06 07:17
    点赞 评论

相关推荐