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

MongoDB में उन दस्तावेज़ों को कैसे खोजें जिनके ऐरे में किसी विशेष फ़ील्ड मान वाला दस्तावेज़ नहीं है?


आप इसके लिए $nin ऑपरेटर का उपयोग कर सकते हैं। कॉन्सेप्ट समझने के लिए, एक दस्तावेज़ के साथ एक संग्रह बनाते हैं। दस्तावेज़ के साथ संग्रह बनाने की क्वेरी इस प्रकार है:

> db.documentWithAParticularFieldValueDemo.insertOne( ... { ... ... ... "StudentId" : 101, ... "StudentDetails" : ... [ ... ... { ... ... "TheoryMarks": 78, ... ... "PracticalMarks": 91 ... ... }, ... ... { ... ... "TheoryMarks": 75, ... ... "PracticalMarks": 75 ... ... } ... ... ] ... ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5c8edab72f684a30fbdfd586") } > db.documentWithAParticularFieldValueDemo.insertOne( ... ... ... { "StudentId" : 102, ... "StudentDetails" : [ ... ... ... { ... ... ... "TheoryMarks": 91, ... ... ... "PracticalMarks": 91 ... ... }, ... ... ... { ... ... "TheoryMarks": 75, ... ... "PracticalMarks": 75 ... ... } ... ... ... ] ... ... } ... ); { "acknowledged" : true, "insertedId" : ObjectId("5c8edaf12f684a30fbdfd587") }

find() विधि की मदद से संग्रह से सभी दस्तावेज़ प्रदर्शित करें। क्वेरी इस प्रकार है:

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

आउटपुट निम्न है:

{ "_id" : ObjectId("5c8edab72f684a30fbdfd586"), "StudentId" : 101, "StudentDetails" : [ { "TheoryMarks" : 78, "PracticalMarks" : 91 }, { "TheoryMarks" : 75, "PracticalMarks" : 75 } ] } { "_id" : ObjectId("5c8edaf12f684a30fbdfd587"), "StudentId" : 102, "StudentDetails" : [ { "TheoryMarks" : 91, "PracticalMarks" : 91 }, { "TheoryMarks" : 75, "PracticalMarks" : 75 } ] }

MongoDB में उन दस्तावेज़ों को खोजने की क्वेरी यहाँ है जिनके ऐरे में किसी विशेष फ़ील्ड मान वाला दस्तावेज़ नहीं है:

> db.documentWithAParticularFieldValueDemo.find({ 'StudentDetails.TheoryMarks': {$nin: [78]} }).pretty();

आउटपुट निम्न है:

{ "_id" : ObjectId("5c8edaf12f684a30fbdfd587"), "StudentId" : 102, "StudentDetails" : [ { "TheoryMarks" : 91, "PracticalMarks" : 91 }, { "TheoryMarks" : 75, "PracticalMarks" : 75 } ] }

  1. - MongoDB में रेगुलर एक्सप्रेशन का उपयोग करके विशिष्ट मान वाले दस्तावेज़ कैसे खोजें?

    रेगुलर एक्सप्रेशन के साथ विशिष्ट मान वाले दस्तावेज़ खोजने के लिए MongoDB $regex ऑपरेटर का उपयोग करें। आइए दस्तावेज़ों के साथ एक संग्रह बनाएं: > db.demo469.insertOne({"StudentName":"John Doe"});{    "acknowledged" : true,    "insertedId"

  1. - MongoDB Aggregation - Specific Field Value वाले Documents Fetch करना

    इसके लिए aggregate() का उपयोग करें। मान लें हमें field Age value 21 वाले documents fetch करने हैं। Collection बनाना > db.demo685.insertOne( ... { ... details: ... [ ... { Name:Chris, Age:21 }, ... { Name:David, Age:23 }, ... { Name:Bob, Age:21 } ... ] ... } ...

  1. - 13 से शुरू होने वाले फील्ड मान वाले डॉक्यूमेंट्स की गिनती करें

    डॉक्यूमेंट्स गिनने के लिए $count (या count()) का उपयोग करें। 13 से शुरू होने वाले मानों के लिए $regex का उपयोग करें। आइए एक कलेक्शन बनाते हैं: > db.demo570.insertOne({Information:{Value:13675}}); { acknowledged : true, insertedId : ObjectId(5e90959b39cfeaaf0b97b583) } > db.demo570.insertOne({