A simple equality query against _id results in IDHACK. When the $eq operator is supplied, the equivalent query uses IXSCAN.
db.simpleid.find({ "_id" : 1 }).explain() db.simpleid.find({ "_id" : { "$eq" : 1 } }).explain()
Other equivalent queries, which may not be considered simple, also use IXSCAN:
db.simpleid.find({ $or : [{ _id : { $eq : 1 } }] }).explain() db.simpleid.find({ $and : [{ _id : { $all : [1] } }] }).explain()