Điều này phù hợp với tôi:
> db.h.insert({x:15})
> db.h.createIndex({x:-1})
> db.h.find().min({x:20}).max({x:10})
{ "_id" : ObjectId("52fb6930253ac3dcf43b27f5"), "x" : 15 }
Chỉ mục của bạn có thể có vấn đề với nó.
Lý do điều này hoạt động là vì chỉ mục thì ngược lại.
Hãy tưởng tượng bạn lật ngược một danh sách, điều tối thiểu và tối đa nói một cách hiệu quả là nhận được một phạm vi của danh sách đó với tối thiểu là 10 và tối đa là 20. Tuy nhiên, phạm vi đó không còn tồn tại nữa vì danh sách bị lộn ngược. Thay vào đó, phạm vi phải được đảo ngược để khớp với danh sách.