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

MongoDB में सभी के बजाय विशिष्ट फील्ड्स चुनें

MongoDB में प्रोजेक्शन का उपयोग करके विशिष्ट फील्ड्स चुनना

find() में प्रोजेक्शन पैरामीटर का उपयोग करके केवल वांछित फील्ड्स प्राप्त करें।

कलेक्शन बनाना

> db.demo269.insertOne({StudentId:101,StudentSubject:"MySQL"});
{ "acknowledged": true, "insertedId": ObjectId("5e481caa1627c0c63e7dbab4") }
> db.demo269.insertOne({StudentId:102,StudentSubject:"Java"});
{ "acknowledged": true, "insertedId": ObjectId("5e481cb11627c0c63e7dbab5") }
> db.demo269.insertOne({StudentId:103,StudentSubject:"MongoDB"});
{ "acknowledged": true, "insertedId": ObjectId("5e481cb21627c0c63e7dbab6") }
> db.demo269.insertOne({StudentId:104,StudentSubject:"C"});
{ "acknowledged": true, "insertedId": ObjectId("5e481cb21627c0c63e7dbab7") }

सभी डॉक्यूमेंट्स (डिफ़ॉल्ट)

> db.demo269.find();
{ "_id": ObjectId("5e481caa1627c0c63e7dbab4"), "StudentId": 101, "StudentSubject": "MySQL" }
{ "_id": ObjectId("5e481cb11627c0c63e7dbab5"), "StudentId": 102, "StudentSubject": "Java" }
{ "_id": ObjectId("5e481cb21627c0c63e7dbab6"), "StudentId": 103, "StudentSubject": "MongoDB" }
{ "_id": ObjectId("5e481cb21627c0c63e7dbab7"), "StudentId": 104, "StudentSubject": "C" }

केवल StudentSubject चुनना (StudentId और _id छिपाना)

> db.demo269.find({},{ "StudentId": 0, _id: 0 });

परिणाम

{ "StudentSubject": "MySQL" }
{ "StudentSubject": "Java" }
{ "StudentSubject": "MongoDB" }
{ "StudentSubject": "C" }

मुख्य बिंदु

  • प्रोजेक्शन ऑब्जेक्ट: find() का दूसरा पैरामीटर
  • 0 मान: फील्ड को बाहर करता है (exclude)
  • 1 मान: फील्ड को शामिल करता है (include)
  • _id डिफ़ॉल्ट रूप से शामिल होता है: इसे छिपाने के लिए स्पष्ट रूप से _id: 0 सेट करें
  • आप शामिल और बाहर करने वाले फील्ड्स को मिश्रित नहीं कर सकते (केवल _id अपवाद है)

यह नेटवर्क ट्रैफिक कम करता है और प्रदर्शन सुधारता है जब आपको केवल कुछ फील्ड्स की आवश्यकता होती है।

  1. - MongoDB में सभी दस्तावेज़ों में सरणी-आधारित फ़ील्ड्स के अद्वितीय आइटम कैसे गिनें?

    MongoDB में सरणी-आधारित फ़ील्ड्स में अद्वितीय आइटम्स को गिनने के लिए, aggregate() के साथ $group का उपयोग करें। आइए दस्तावेज़ों के साथ एक संग्रह बनाएं: > db.demo493.insertOne({SubjectName:[MySQL,MongoDB,Java]}); { acknowledged : true, insertedId : ObjectId(5e849f97b0f3fa88e22790c4) } > db.demo4

  1. - MongoDB में सरणी फील्ड के साथ काम करके सभी से मिलान कैसे करें?

    MongoDB में सभी से मिलान करने के लिए $all का उपयोग करें। $all ऑपरेटर उन डॉक्यूमेंट्स को चुनता है जहां फील्ड का मान एक सरणी है जिसमें सभी निर्दिष्ट तत्व होते हैं। आइए एक कलेक्शन बनाते हैं: > db.demo695.insertOne({ListOfValues:[100,200,500,800]}); { acknowledged : true, insertedId : ObjectId(5ea6d

  1. - MongoDB क्वेरी: _id को छोड़कर सभी फील्ड्स के मान प्रदर्शित करें

    आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo590.insert([ { Name: Chris, Age: 21 }, { Name: Bob, Age: 20 }, { Name: Sam, Age: 19 } ]); BulkWriteResult({ writeErrors: [], writeConcernErrors: [], nInserted: 3, nUpserted: 0, nMatched: 0, nModified: 0, nRemoved: 0, upserted: [] }