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

MongoDB क्वेरी किसी सरणी को n विशेषताओं वाले दस्तावेज़ों के मानचित्र में बदलने के लिए?

<घंटा/>

इसके लिए आप $map का इस्तेमाल कर सकते हैं। आइए पहले दस्तावेजों के साथ एक संग्रह बनाएं -

> db.demo398.insertOne({
...    "details":[
...       {
...          "Name":"Chris",
...          "Age":22
...       }
...    ]
... }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e5e8cedfac4d418a017856c")
}

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

> db.demo398.find();

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

{ "_id" : ObjectId("5e5e8cedfac4d418a017856c"), "details" : [ { "Name" : "Chris", "Age" : 22 } ] }

किसी सरणी को n विशेषताओं वाले दस्तावेज़ों के मानचित्र में बदलने के लिए क्वेरी निम्नलिखित है -

> db.demo398.aggregate([
...    {
...       "$addFields": {
...          "details": {
...             "$arrayToObject": {
...                "$map": {
...                   "input": "$details",
...                   "as": "out",
...                   "in": {
...                      "k": "$$out.Name",
...                      "v": "$$out"
...                   }
...                }
...             }
...          }
...       }
...    }
... ])

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

{ "_id" : ObjectId("5e5e8cedfac4d418a017856c"), "details" : { "Chris" : { "Name" : "Chris", "Age" : 22 } } }

  1. एक सरणी फ़ील्ड वाले दस्तावेज़ों से मिलान करने के लिए MongoDB क्वेरी

    सरणी फ़ील्ड वाले दस्तावेज़ों का मिलान करने के लिए, $elemMatch ऑपरेटर का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - db.demo592.insertOne(... {... id:102,... विवरण:[... {नाम:क्रिस, मान:500}, ... {नाम:डेविड, वैल्यू:900}...]...}...);{ स्वीकृत:सच, सम्मिलित आईडी:ऑब्जेक्ट आईडी (5e930d90fd2d90c177

  1. MongoDB के साथ एम्बेडेड दस्तावेज़ की सरणी पर फ़िल्टर क्वेरी?

    इसके लिए MongoDB में समुच्चय () का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo736.insertOne( ...    { ...       "_id": "101", ...       "details1": [ ...          { ...     &

  1. MongoDB में एक प्रश्न के साथ कई दस्तावेज़ कैसे अपडेट करें?

    एक ही क्वेरी के साथ कई दस्तावेज़ों को अपडेट करने के लिए, MongoDB में बल्कराइट () का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo760.insertOne({id:1,details:{Value1:100,Value2:50}}); {    "acknowledged" : true,    "insertedId" : ObjectId(&qu