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

MongoDB में फील्ड मौजूद होने पर ही शर्त लागू करना

$or ऑपरेटर के साथ सशर्त क्वेरी

किसी फील्ड पर शर्त **केवल तभी** लागू करने के लिए जब वह फील्ड दस्तावेज़ में मौजूद हो, $or ऑपरेटर का उपयोग करें: एक शर्त फील्ड की अनुपस्थिति की जांच करती है ($exists: false), दूसरी शर्त वांछित मान की जांच करती है।

उदाहरण: डेटा डालना (एक दस्तावेज़ में StudentAge गायब है)

> db.applyConditionDemo.insertOne({"StudentName":"Larry","StudentAge":21,"StudentMarks":45});
...
> db.applyConditionDemo.insertOne({"StudentName":"Robert","StudentMarks":98}); // StudentAge गायब
...

सभी दस्तावेज़ देखना

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

आउटपुट (Robert के पास StudentAge नहीं है):

{ "_id" : ..., "StudentName" : "Larry", "StudentAge" : 21, "StudentMarks" : 45 }
{ "_id" : ..., "StudentName" : "Sam", "StudentAge" : 23, "StudentMarks" : 55 }
{ "__id" : ..., "StudentName" : "David", "StudentAge" : 21, "StudentMarks" : 65 }
{ "_id" : ..., "StudentName" : "Carol", "StudentAge" : 24, "StudentMarks" : 78 }
{ "_id" : ..., "StudentName" : "Chris", "StudentAge" : 21, "StudentMarks" : 88 }
{ "_id" : ..., "StudentName" : "Robert", "StudentMarks" : 98 }

क्वेरी: StudentAge 21 है **या** StudentAge मौजूद नहीं है

> db.applyConditionDemo.find({ $or: [ { StudentAge: { $exists:false } }, { StudentAge:21 } ]}).pretty();

आउटपुट (Robert शामिल है क्योंकि StudentAge गायब है, साथ ही वे जिनकी आयु 21 है):


व्याख्या: $or सरणी की पहली शर्त { StudentAge: { $exists: false } } उन दस्तावेज़ों से मेल खाती है जहां फील्ड अनुपस्थित है। दूसरी शर्त { StudentAge: 21 } उन दस्तावेज़ों से मेल खाती है जहां फील्ड मौजूद है और मान 21 है।

  1. - MongoDB में $addToSet का उपयोग करके सरणी में अद्वितीय मान जोड़ना

    MongoDB में $addToSet: सरणी में डुप्लिकेट-मुक्त जोड़ $addToSet ऑपरेटर किसी मान को सरणी में केवल तभी जोड़ता है जब वह पहले से मौजूद न हो। यह सरणी में अद्वितीय मान बनाए रखने के लिए आदर्श है। नमूना डेटा > db.demo336.insertOne({Name: Chris, Score: [45, 67, 78]}); { acknowledged: true, insertedId: Obj

  1. - MongoDB Query - केवल Specific Field Value Update करना

    आइए उदाहरण देखते हैं और documents के साथ collection बनाते हैं: Collection बनाना > db.demo557.insertOne({Name:Chris}); { acknowledged : true, insertedId : ObjectId(5e8f28e954b4472ed3e8e864) } > db.demo557.insertOne({Name:David}); { acknowledged : true, insertedId : ObjectId(5e8f28ee54b4472ed3e

  1. - MongoDB 4 में दस्तावेजों को सॉर्ट करें और केवल एक फील्ड प्रदर्शित करें

    MongoDB 4 में दस्तावेजों को सॉर्ट करने के लिए sort() का उपयोग करें। केवल एक फील्ड दिखाने के लिए, जो सॉर्ट की गई है, उसे 1 पर सेट करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo611.insertOne({Name:Chris}); { acknowledged : true, insertedId : ObjectId(5e987110f6b89257f5584d83) } > d