আপনি MongoDB-তে অ্যারে উপাদানগুলি ফিল্টার করতে সমষ্টিগত কাঠামোর সাথে $setIntersection অপারেটর ব্যবহার করতে পারেন। আসুন প্রথমে নথি-
সহ একটি সংগ্রহ তৈরি করি> db.filterArrayElementsDemo.insertOne( { "Scores": [10,45,67,78,90,98,99,92] } );
{
"acknowledged" : true,
"insertedId" : ObjectId("5cd2d582b64f4b851c3a13c8")
} Find() পদ্ধতির সাহায্যে একটি সংগ্রহ থেকে সমস্ত নথি প্রদর্শন করার জন্য নিম্নলিখিত প্রশ্ন রয়েছে -
> db.filterArrayElementsDemo.find().pretty();
এটি নিম্নলিখিত আউটপুট −
তৈরি করবে{
"_id" : ObjectId("5cd2d582b64f4b851c3a13c8"),
"Scores" : [
10,
45,
67,
78,
90,
98,
99,
92
]
} অ্যারে উপাদানগুলি −
ফিল্টার করার জন্য নিম্নোক্ত ক্যোয়ারী> db.filterArrayElementsDemo.aggregate([
... { $match : {
... _id: ObjectId("5cd2d582b64f4b851c3a13c8")
... }},
... { $project: {
... Scores: {
... $setIntersection: ['$Scores', [10,98,99]]
... }
... }}
... ]); এটি নিম্নলিখিত আউটপুট −
তৈরি করবে{ "_id" : ObjectId("5cd2d582b64f4b851c3a13c8"), "Scores" : [ 10, 98, 99 ] }