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

अगर मेरी क्वेरी में $ या ऑपरेटर है तो क्या मैं MongoDB इंडेक्स पर क्वेरी कर सकता हूं?

<घंटा/>

हां, आप यह कर सकते हैं। सबसे पहले, आपको एक इंडेक्स बनाना होगा और फिर व्याख्या() का उपयोग करना होगा। आइए सबसे पहले एक MongoDB इंडेक्स बनाएं। निम्नलिखित प्रश्न है:

> db.indexOrQueryDemo.ensureIndex({"First":1});

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

{
   "createdCollectionAutomatically" : false,
   "numIndexesBefore" : 2,
   "numIndexesAfter" : 3,
   "ok" : 1
}

दूसरी अनुक्रमणिका बनाने की क्वेरी इस प्रकार है

> db.indexOrQueryDemo.ensureIndex({"Second":1});

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

{
   "createdCollectionAutomatically" : false,
   "numIndexesBefore" : 3,
   "numIndexesAfter" : 4,
   "ok" : 1
}

अनुक्रमित के साथ $ या ऑपरेटर के लिए क्वेरी निम्नलिखित है। हमने यहां व्याख्या () का भी उपयोग किया है

> db.indexOrQueryDemo.find({$or:[{First:1}, {Second:2}]}).explain();

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

{
   "queryPlanner" : {
      "plannerVersion" : 1,
      "namespace" : "test.indexOrQueryDemo",
      "indexFilterSet" : false,
      "parsedQuery" : {
         "$or" : [
            {
               "First" : {
                  "$eq" : 1
               }
            },
            {
               "Second" : {
                  "$eq" : 2
               }
            }
         ]
      },
      "winningPlan" : {
         "stage" : "SUBPLAN",
         "inputStage" : {
            "stage" : "FETCH",
            "inputStage" : {
               "stage" : "OR",
               "inputStages" : [
                  {
                     "stage" : "IXSCAN",
                     "keyPattern" : {
                           "First" : 1
                     },
                     "indexName" : "First_1",
                     "isMultiKey" : false,
                     "multiKeyPaths" : {
                        "First" : [ ]
                     },
                     "isUnique" : false,
                     "isSparse" : false,
                     "isPartial" : false,
                     "indexVersion" : 2,
                     "direction" : "forward",
                     "indexBounds" : {
                        "First" : [
                           "[1.0, 1.0]"
                        ]
                     }
                  },
                  {
                     "stage" : "IXSCAN",
                     "keyPattern" : {
                        "Second" : 1
                     },
                     "indexName" : "Second_1",
                     "isMultiKey" : false,
                     "multiKeyPaths" : {
                        "Second" : [ ]
                     },
                     "isUnique" : false,
                     "isSparse" : false,
                     "isPartial" : false,
                     "indexVersion" : 2,
                     "direction" : "forward",
                     "indexBounds" : {
                        "Second" : [
                           "[2.0, 2.0]"
                        ]
                     }
                  }
               ]
            }
         }
      },
      "rejectedPlans" : [ ]
   },
   "serverInfo" : {
      "host" : "DESKTOP-QN2RB3H",
      "port" : 27017,
      "version" : "4.0.5",
      "gitVersion" : "3739429dd92b92d1b0ab120911a23d50bf03c412"
   },
   "ok" : 1
}

  1. मैं MongoDB में फ़ील्ड का नाम कैसे बदल सकता हूँ?

    फ़ील्ड का नाम बदलने के लिए, $project का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo517.insertOne({"Name":"Chris Brown"});{    "acknowledged" : true,    "insertedId" : ObjectId("5e88a2a2987b6e0e9d18f595") } >

  1. MongoDB $ या ऑपरेटर के साथ दस्तावेज़ लाने के लिए

    $या ऑपरेटर दो या दो से अधिक भावों की एक सरणी पर एक तार्किक या संचालन करता है। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo674.insertOne({Name:"Chris",Age:21}); {    "acknowledged" : true,    "insertedId" : ObjectId("5ea3f33604263e90dac94

  1. नेस्टेड दस्तावेज़ को अद्यतन करने के लिए MongoDB क्वेरी?

    नेस्टेड दस्तावेज़ को अपडेट करने के लिए, अपडेट() का उपयोग करें और उसके भीतर, डॉट नोटेशन का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo607.insertOne( ...    { ...       id:1, ...       "Info1" : { ...         &n