Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Mongodb

क्या मोंगोडीबी में वाइल्डकार्ड के साथ नेस्टेड फ़ील्ड को बाहर करना संभव है?

<घंटा/>

एकत्रीकरण पाइपलाइन के साथ इसे प्राप्त करें। आइए पहले दस्तावेजों के साथ एक संग्रह बनाएं -

> db.demo413.insertOne(
...    {
...       "_id": "101",
...       "details": {
...          "Info1": {
...             Name:"Chris",
...             Age:21
...          },
...          "Info2": {
...             Name:"David",
...             Age:23
...          }
...       }
...    }
... );
{ "acknowledged" : true, "insertedId" : "101" }

संग्रह से सभी दस्तावेज़ ढूंढें () विधि की सहायता से प्रदर्शित करें -

> db.demo413.find();

यह निम्नलिखित आउटपुट उत्पन्न करेगा -

{ "_id" : "101", "details" : { "Info1" : { "Name" : "Chris", "Age" : 21 }, "Info2" : { "Name" : "David", "Age" : 23 } } }

नेस्टेड फ़ील्ड को बाहर करने की क्वेरी निम्नलिखित है -

> db.demo413.aggregate([
...    { $project: { "details" : { $objectToArray: "$details" } } },
...    { $project: { "details.v.Age" : 0} },
...    { $project: { "details" : { $arrayToObject: "$details"} } }
... ]);

यह निम्नलिखित आउटपुट उत्पन्न करेगा -

{ "_id" : "101", "details" : { "Info1" : { "Name" : "Chris" }, "Info2" : { "Name" : "David" } } }

  1. मैं सभी से मेल खाने के लिए मोंगोडीबी में सरणी फ़ील्ड के साथ कैसे काम करूं?

    MongoDB में सभी का मिलान करने के लिए, $all का उपयोग करें। $all ऑपरेटर उन दस्तावेज़ों का चयन करता है जहाँ किसी फ़ील्ड का मान एक सरणी है जिसमें सभी निर्दिष्ट तत्व होते हैं। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo695.insertOne({"ListOfValues":[100,200,500,800]}); {    &

  1. MongoDB एकत्रीकरण के साथ कई क्षेत्रों द्वारा गणना करें

    एकाधिक फ़ील्ड द्वारा गिनने के लिए, MongoDB में $facet का उपयोग करें। $facet इनपुट दस्तावेज़ों के एक ही सेट पर एक ही चरण में कई एकत्रीकरण पाइपलाइनों को संसाधित करता है। आइए दस्तावेजों के साथ एक संग्रह बनाएं - db.demo721.insertOne(... {...... details1:{... id:101......},. .. details2:{... id:102...},

  1. MongoDB के साथ विशिष्ट नेस्टेड दस्तावेज़ों के लिए वस्तुओं की एक सरणी पर पूछताछ?

    नेस्टेड दस्तावेज़ों के लिए ऑब्जेक्ट्स की एक सरणी पर क्वेरी करने के लिए, ढूंढें () का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo763.insertOne( ...    { ...       _id:1, ...       CountryName:"US", ...       "s