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

MongoDB में $addToSet Implement करके Single Field के Values Fetch करना

$addToSet operator value को array में add करता है जब तक value पहले से present न हो, उस case में $addToSet उस array के लिए कुछ नहीं करता।

Collection बनाना

> db.demo533.insertOne({"ProjectName":"Online Hospital Management"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e8b4cfaef4dcbee04fbbbfc") }
> db.demo533.insertOne({"ProjectName":"Online Library Management"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e8b4d02ef4dcbee04fbbbfd") }
> db.demo533.insertOne({"ProjectName":"Online Hospital Management"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e8b4d04ef4dcbee04fbbbfe") }
> db.demo533.insertOne({"ProjectName":"Online Customer Tracker"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e8b4d0def4dcbee04fbbbff") }

सभी Documents Display करना

> db.demo533.find();

Output:

{ "_id" : ObjectId("5e8b4cfaef4dcbee04fbbbfc"), "ProjectName" : "Online Hospital Management" }
{ "_id" : ObjectId("5e8b4d02ef4dcbee04fbbbfd"), "ProjectName" : "Online Library Management" }
{ "_id" : ObjectId("5e8b4d04ef4dcbee04fbbbfe"), "ProjectName" : "Online Hospital Management" }
{ "_id" : ObjectId("5e8b4d0def4dcbee04fbbbff"), "ProjectName" : "Online Customer Tracker" }

$addToSet Implement करने का Query

> db.demo533.aggregate(
...   [
...     {
...       $group:
...       {
...         _id:null,
...         SetOfProject: { $addToSet: "$ProjectName" }
...       }
...     }
...   ]
... )

Output:

{ "_id" : null, "SetOfProject" : [ "Online Customer Tracker", "Online Library Management", "Online Hospital Management" ] }

व्याख्या: $addToSet duplicate values को automatically handle करता है। यहाँ "Online Hospital Management" दो बार था लेकिन output array में केवल एक बार आया। _id: null का उपयोग करके सभी documents को single group में treat किया गया।

  1. - MongoDB क्वेरी: दस्तावेज़ों में विशिष्ट फ़ील्ड के मान जोड़ें

    आइए दस्तावेज़ों के साथ एक संग्रह बनाएं: > db.demo677.insertOne({Value:10}); { acknowledged : true, insertedId : ObjectId(5ea421f404263e90dac943f8) } > db.demo677.insertOne({Value:50}); { acknowledged : true, insertedId : ObjectId(5ea421f704263e90dac943f9) } > db.demo677.insertOne({Value:20}

  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. - MongoDB क्वेरी: फील्ड के रिटर्निंग वैल्यूज को लिमिट करें

    इसके लिए $slice का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo594.insertOne({ id:1, details:[ {Name:Chris,Age:21}, {Name:Bob,Age:20}, {Name:David,Age:23}, {Name:Sam,Age:22} ] }); { acknowledged : true, insertedId : ObjectId(5e9334