Pour cette requête OU:indices composés pour OU + Trier requête dans MongoDB
db.messages.find({ $or: [ { to: { $ne: null }, from: "xyz" }, { to: "xyz" } ] }).sort({_id: -1}).limit(50)
avec des indices suivants:
{to:1, from: 1, _id:-1} and {from:1, to:1, _id:-1}
mongo est toujours en train de faire une analyse complète. J'espérais que Mongo pourrait utiliser ces deux indices et fusionner les résultats. Dois-je diviser cela en deux requêtes (une pour chaque clause OR) et me fusionner? Ou y a-t-il un autre indice qui peut aider?
Merci! Votera pour cela. – tarkeshwar
Content de l'avoir trouvé. J'ai passé quelques heures aujourd'hui à penser que je faisais quelque chose de stupide. – Hersha