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

MongoDB में उप-दस्तावेज़ पर किसी शर्त द्वारा दस्तावेज़ों को कैसे क्वेरी करें?

<घंटा/>

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

> db.demo394.insertOne(
...    {
...
...       details: [
...       {
...          _id: '1',
...          startDate: '2018-01-11T07:00:00.000Z',
...          endDate: '2019-01-12T07:59:59.999Z'
...       },
...       {
...          _id: '2',
...          startDate: '2019-01-21T07:00:00.000Z',
...          endDate: '2020-01-04T07:59:59.999Z'
...       }
...    ]
... }
... );
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e5e716817aa3ef9ab8ab202")
}

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

> db.demo394.find();

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

{
   "_id" : ObjectId("5e5e716817aa3ef9ab8ab202"), "details" : [
      { "_id" : "1", "startDate" : "2018-01-11T07:00:00.000Z", "endDate" : "2019-01-12T07:59:59.999Z" },
      { "_id" : "2", "startDate" : "2019-01-21T07:00:00.000Z", "endDate" : "2020-01-04T07:59:59.999Z" }
   ]
}

उप-दस्तावेज़ पर एक शर्त द्वारा दस्तावेज़ों को क्वेरी करने का तरीका निम्नलिखित है -

> db.demo394.find({
...    $expr: {
...       $let: {
...          vars: { "d": { $arrayElemAt: [ "$details", -1 ] } },
...          in: { $eq: [ "$$d.endDate", "2020-01-04T07:59:59.999Z" ] }
...       }
...    }
... })

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

{
   "_id" : ObjectId("5e5e716817aa3ef9ab8ab202"), "details" : [
      { "_id" : "1", "startDate" : "2018-01-11T07:00:00.000Z", "endDate" : "2019-01-12T07:59:59.999Z" },
      { "_id" : "2", "startDate" : "2019-01-21T07:00:00.000Z", "endDate" : "2020-01-04T07:59:59.999Z" }
   ] 
}

  1. दस्तावेजों में एक विशिष्ट क्षेत्र के मूल्यों को जोड़ने के लिए MongoDB क्वेरी

    आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo677.insertOne({Value:10}); {    "acknowledged" : true,    "insertedId" : ObjectId("5ea421f404263e90dac943f8") } > db.demo677.insertOne({Value:50}); {    "acknowledged" : true,

  1. MongoDB - क्वेरी एम्बेडेड दस्तावेज़?

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

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

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