ভিন্ন ক্রমে মানের সাথে সঠিক অ্যারে মিল খুঁজে পেতে, আপনি $all অপারেটর ব্যবহার করতে পারেন। আসুন আমরা নথি সহ একটি সংগ্রহ তৈরি করি। নিম্নোক্ত প্রশ্নটি
>db.exactMatchArrayDemo.insertOne({"StudentName":"David","StudentAge":22,"StudentGameScores":[45,78,98]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9c94702d6669774125246c")
}
>db.exactMatchArrayDemo.insertOne({"StudentName":"Chris","StudentAge":23,"StudentGameScores":[45,78]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c9c94a42d6669774125246d")
} Find() পদ্ধতি
এর সাহায্যে একটি সংগ্রহ থেকে সমস্ত নথি প্রদর্শন করার জন্য নিম্নলিখিত প্রশ্ন রয়েছে> db.exactMatchArrayDemo.find().pretty();
এটি নিম্নলিখিত আউটপুট তৈরি করবে
{
"_id" : ObjectId("5c9c94702d6669774125246c"),
"StudentName" : "David",
"StudentAge" : 22,
"StudentGameScores" : [
45,
78,
98
]
}
{
"_id" : ObjectId("5c9c94a42d6669774125246d"),
"StudentName" : "Chris",
"StudentAge" : 23,
"StudentGameScores" : [
45,
78
]
} সঠিক অ্যারে মিল খুঁজে পেতে ক্যোয়ারী নিচে দেওয়া হল
> db.exactMatchArrayDemo.find({ "StudentGameScores": { "$size" : 2, "$all": [ 78, 45 ] } }).pretty(); এটি নিম্নলিখিত আউটপুট তৈরি করবে
{
"_id" : ObjectId("5c9c94a42d6669774125246d"),
"StudentName" : "Chris",
"StudentAge" : 23,
"StudentGameScores" : [
45,
78
]
} সঠিক অ্যারে মিল খুঁজে বের করার জন্য নিচের ক্যোয়ারী কিন্তু অর্ডার কোন ব্যাপার না। আমরা 3টি মান সহ "স্টুডেন্টগেমস্কোর" ফিল্ড পেতে একটি ভিন্ন আকার সেট করেছি
> db.exactMatchArrayDemo.find({ "StudentGameScores": { "$size" : 3, "$all": [ 78, 45 ] } }).pretty(); এটি নিম্নলিখিত আউটপুট তৈরি করবে
{
"_id" : ObjectId("5c9c94702d6669774125246c"),
"StudentName" : "David",
"StudentAge" : 22,
"StudentGameScores" : [
45,
78,
98
]
}