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

MongoDB में किसी सरणी में एकाधिक आइटम पुनर्प्राप्त करने की क्वेरी?

<घंटा/>

एक सरणी में एकाधिक आइटम पुनर्प्राप्त करने के लिए, समग्र ढांचे का उपयोग करें। आइए पहले दस्तावेजों के साथ एक संग्रह बनाएं -

> db.retrieveMultipleDemo.insertOne(
...   {
...      "UserDetails":
...      [
...         { "_id": "101", "UserName":"John", "UserAge": 23 },
...         { "_id": "102", "UserName":"Carol", "UserAge": 21 },
...         { "_id": "103", "UserName":"David", "UserAge": 23},
...         { "_id": "104", "UserName":"Sam", "UserAge": 25}
...      ]
...   }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cd40c85edc6604c74817cf0")
}

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

> db.retrieveMultipleDemo.find().pretty();

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

{
   "_id" : ObjectId("5cd40c85edc6604c74817cf0"),
   "UserDetails" : [
      {
         "_id" : "101",
         "UserName" : "John",
         "UserAge" : 23
      },
      {
         "_id" : "102",
         "UserName" : "Carol",
         "UserAge" : 21
      },
      {
         "_id" : "103",
         "UserName" : "David",
         "UserAge" : 23
      },
      {
         "_id" : "104",
         "UserName" : "Sam",
         "UserAge" : 25
      }
   ]
}

एक सरणी में एकाधिक आइटम पुनर्प्राप्त करने के लिए क्वेरी निम्नलिखित है -

> db.retrieveMultipleDemo.aggregate([
...   {$unwind:"$UserDetails"},
...   {$match:{"UserDetails._id":{$in:myIds},"UserDetails.UserAge":23}},
...   {$group:{"_id":"_id","UserDetails":{$push:"$UserDetails"}}},
...   {$project:{"_id":0,"UserDetails":1}}
... ]);

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

{ "UserDetails" : [ { "_id" : "101", "UserName" : "John", "UserAge" : 23 }, { "_id" : "103", "UserName" : "David", "UserAge" : 23 } ] }

  1. MongoDB में उप-दस्तावेज़ों की क्वेरी सरणी

    उप-दस्तावेज़ों की एक सरणी को क्वेरी करने के लिए, MongoDB में $unwind का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo499.insertOne({ ... "details": ...    [ ...       { ...          Name :"MIT", ...    

  1. MongoDB क्वेरी को _id . द्वारा समूहित करने के लिए

    MongoDB में _id द्वारा समूहित करने के लिए, $group का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo529.insertOne({"Score":10});{    "acknowledged" : true,    "insertedId" : ObjectId("5e8b1d5bef4dcbee04fbbbe4") } > db.de

  1. MongoDB क्वेरी वस्तुओं की सरणी के अंदर एक से अधिक मिलान खोजने के लिए?

    इसके लिए $ और साथ में $regex का उपयोग करें। $and एक या अधिक अभिव्यक्तियों की एक सरणी पर एक तार्किक और संचालन करता है और उन दस्तावेज़ों का चयन करता है जो सरणी में सभी अभिव्यक्तियों को संतुष्ट करते हैं। आइए दस्तावेजों के साथ एक संग्रह बनाएं - db.demo525.insertOne({details:[{Name:Mike,,CountryName:UK