একটি সাবডকুমেন্ট অ্যারে থেকে রেকর্ড আনতে, $পুশ সহ $unwind ব্যবহার করুন। 234 থেকে শুরু হওয়া আইডিগুলির জন্য, MongoDB-তে regex ব্যবহার করুন৷
৷আসুন নথি-
সহ একটি সংগ্রহ তৈরি করি> db.demo556.insertOne( ... { ... _id:101, ... details:[ ... { ... id:"234336", ... Name:"Chris" ... }, ... { ... id:"123456", ... Name:"Bob" ... }, ... { ... id:"234987", ... Name:"Carol" ... }, ... { ... id:"989768", ... Name:"David" ... }, ... { ... id:"234888", ... Name:"Sam" ... }, ... { ... id:"847656", ... Name:"John" ... } ... ] ... } ... ); { "acknowledged" : true, "insertedId" : 101 }
Find() পদ্ধতি -
এর সাহায্যে একটি সংগ্রহ থেকে সমস্ত নথি প্রদর্শন করুন> db.demo556.find();
এটি নিম্নলিখিত আউটপুট −
তৈরি করবে{ "_id" : 101, "details" : [ { "id" : "234336", "Name" : "Chris" }, { "id" : "123456", "Name" : "Bob" }, { "id" : "234987", "Name" : "Carol" }, { "id" : "989768", "Name" : "David" }, { "id" : "234888", "Name" : "Sam" }, { "id" : "847656", "Name" : "John" } ] }
একটি সাবডকুমেন্ট অ্যারে −
থেকে রেকর্ডগুলি আনার জন্য নিম্নলিখিত প্রশ্নটি রয়েছে৷> db.demo556.aggregate({ ... $match: { ... "_id": 101 ... } ... }, { ... $unwind: "$details" ... }, { ... $match: { ... "details.id": { ... $regex: /^234/ ... } ... } ... }, { ... $group: { ... _id: "$_id", ... "Detail": { ... $push: "$details" ... } ... } ... }).pretty();
এটি নিম্নলিখিত আউটপুট −
তৈরি করবে{ "_id" : 101, "Detail" : [ { "id" : "234336", "Name" : "Chris" }, { "id" : "234987", "Name" : "Carol" }, { "id" : "234888", "Name" : "Sam" } ] }