मान लीजिए मैं इस तरह एक संग्रह है:मोंगो क्वेरी उप दस्तावेज़ के कई क्षेत्रों पर
{ "arr" : [ { "name" : "a", "num" : 1 }, { "name" : "a", "num" : 2 } ] },
{ "arr" : [ { "name" : "b", "num" : 1 }, { "name" : "a", "num" : 2 } ] },
{ "arr" : [ { "name" : "b", "num" : 1 }, { "name" : "b", "num" : 2 } ] }
और मैं सभी दस्तावेजों जो arr
है पता लगाना चाहते हैं एक name
= "बी" और num
के साथ सब-दस्तावेज़ = 2.
मैं इस तरह एक प्रश्न करते हैं:
db.collection.find({
$and: [
{ "arr.name": "b" },
{ "arr.num": 2 }
]
});
यह संग्रह में सभी दस्तावेजों वापस आ जाएगी क्योंकि वे एक एक सु शामिल साथ बी-दस्तावेज़ या तो "बी" के एक name
या 2.
के num
मैं भी इस की कोशिश की है:
db.collection.find({
arr: [
{ "name": "b", "num": 2 }
]
});
जो किसी भी त्रुटि फेंक नहीं है, फिर भी कोई फल प्राप्त नहीं करता है ।
आप MongoDB में एकाधिक उप-दस्तावेज़ फ़ील्ड पर कैसे पूछते हैं?
बहुत उपयोगी और पूरा उत्तर, खेद है कि दो बार ऊपर उठने में सक्षम न हो। धन्यवाद नील! – Moppo