dokumentationen siger ikke, at dette er umuligt. Der står kun
Denne forespørgsel kan ikke konstrueres ved hjælp af en implicit AND-operation, fordi den bruger $or-operatoren mere end én gang.
det betyder, at dette vil virke :
db.inventory.find( {
$and : [
{ $or : [ { price : 0.99 }, { price : 1.99 } ] },
{ $or : [ { sale : true }, { qty : { $lt : 20 } } ] }
]
} )
men det gør det ikke, fordi det er en implicit $and
med to $or
db.inventory.find({
{ $or : [ { price : 0.99 }, { price : 1.99 } ] },
{ $or : [ { sale : true }, { qty : { $lt : 20 } } ] }
})
prøv det online:mongoplayground.net/p/gL_0gKzGA-u
Her er en arbejdssag med en implicit $and
:
db.inventory.find({ price: { $ne: 1.99, $exists: true } })
Jeg gætter på, at problemet du står over for er, at der ikke er noget dokument, der matcher din anmodning i din samling