दस्तावेज़ीकरण यह नहीं कहता कि यह असंभव है। यह केवल कहता है
<ब्लॉककोट>इस क्वेरी का निर्माण एक अंतर्निहित और ऑपरेशन का उपयोग करके नहीं किया जा सकता है, क्योंकि यह एक से अधिक बार $ या ऑपरेटर का उपयोग करता है।
इसका मतलब है कि यह काम करेगा:
db.inventory.find( {
$and : [
{ $or : [ { price : 0.99 }, { price : 1.99 } ] },
{ $or : [ { sale : true }, { qty : { $lt : 20 } } ] }
]
} )
लेकिन ऐसा नहीं होगा, क्योंकि यह एक निहित है $and
दो $or
. के साथ
db.inventory.find({
{ $or : [ { price : 0.99 }, { price : 1.99 } ] },
{ $or : [ { sale : true }, { qty : { $lt : 20 } } ] }
})
इसे ऑनलाइन आज़माएं:mongoplayground.net/p/gL_0gKzGA-u
यहां एक अंतर्निहित $and
. के साथ एक कार्यशील मामला है :
db.inventory.find({ price: { $ne: 1.99, $exists: true } })
मुझे लगता है कि आप जिस समस्या का सामना कर रहे हैं वह यह है कि आपके संग्रह में आपके अनुरोध से मेल खाने वाला कोई दस्तावेज़ नहीं है