Je pense que la meilleure façon d'obtenir ce que vous voulez est d'ajouter {_id : -1}
db.coll.find({a : 1})
sera transformé en db.coll.find({a : 1, _id : -1})
. C'est plus simple que toutes les solutions shx2 (sauf la dernière avec noScan qui est sympa).
De plus _id
le champ est déjà un index primaire, donc il se rendra compte rapidement qu'il n'y a pas un tel _id
champ dans la collection.
P.S. si quelqu'un serait assez intelligent pour nommer son _id comme -1, alors vous pouvez faire {_id : NaN}
.Si il y aura _id = NaN
alors vous devrez probablement redévelopper votre application.