MongoDB में नेस्टेड इंडेक्स बनाने के लिए, आप createIndex() या ensureIndex() का उपयोग कर सकते हैं। सिंटैक्स इस प्रकार है:
db.yourCollectionName.createIndex({ "yourOuterFieldName.yourInnerFieldName.yourSecondInnerFieldName": 1 });
सिंटैक्स समझने के लिए, एक दस्तावेज़ के साथ एक संग्रह बनाते हैं। दस्तावेज़ के साथ संग्रह बनाने की क्वेरी इस प्रकार है:
> db.nestedIndexDemo.insertOne( ... { ... ... ... "CustomerId":101, ... "CustomerDetails": ... { ... ... "CustomerListDetails": ... { ... ... ... "CustomerName":"Larry", ... ... ... "CustomerProjectName": "Project-1", ... ... ... "CustomerCountryName":"US" ... ... ... } ... ... } ... ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5c8fc565d3c9d04998abf010") }
find() विधि की मदद से संग्रह से सभी दस्तावेज़ प्रदर्शित करें। क्वेरी इस प्रकार है:
> db.nestedIndexDemo.find().pretty();
आउटपुट निम्न है:
{ "_id" : ObjectId("5c8fc565d3c9d04998abf010"), "CustomerId" : 101, "CustomerDetails" : { "CustomerListDetails" : { "CustomerName" : "Larry", "CustomerProjectName" : "Project-1", "CustomerCountryName" : "US" } } }
MongoDB में नेस्टेड इंडेक्स बनाने की क्वेरी यहाँ है:
> db.nestedIndexDemo.createIndex({ "CustomerDetails.CustomerListDetails.CustomerCountryName": 1 }); { "createdCollectionAutomatically" : false, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 }
इंडेक्स प्रदर्शित करने की क्वेरी यहाँ है:
> db.nestedIndexDemo.getIndexes();
आउटपुट निम्न है:
[ { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "test.nestedIndexDemo" }, { "v" : 2, "key" : { "CustomerDetails.CustomerListDetails.CustomerCountryName" : 1 }, "name" : "CustomerDetails.CustomerListDetails.CustomerCountryName_1", "ns" : "test.nestedIndexDemo" } ]