শুধুমাত্র এমবেডেড নথি ফেরত দেওয়া সম্ভব নয়। যাইহোক, এটি একটি সংগ্রহ থেকে সমস্ত নথি ফেরত দেবে। ডকুমেন্ট সহ একটি সংগ্রহ তৈরি করতে প্রথমে নিম্নলিখিত ক্যোয়ারীটি প্রয়োগ করা যাক
>db.queryToEmbeddedDocument.insertOne({"UserName":"Larry","PostDetails":[{"UserMessage":"Hello","UserLikes":8},{"UserMessage":"Hi","UserLikes":6},{"UserMessage":"Good Morning","UserLikes":12},{"UserMessage":"Awesome","UserLikes":4}]});
{
"acknowledged" : true,
"insertedId" : ObjectId("5c988a9f330fd0aa0d2fe4bd")
} Find() পদ্ধতি
এর সাহায্যে একটি সংগ্রহ থেকে সমস্ত নথি প্রদর্শন করার জন্য নিম্নলিখিত প্রশ্ন রয়েছে> db.queryToEmbeddedDocument.find().pretty();
এটি নিম্নলিখিত আউটপুট তৈরি করবে
{
"_id" : ObjectId("5c988a9f330fd0aa0d2fe4bd"),
"UserName" : "Larry",
"PostDetails" : [
{
"UserMessage" : "Hello",
"UserLikes" : 8
},
{
"UserMessage" : "Hi",
"UserLikes" : 6
},
{
"UserMessage" : "Good Morning",
"UserLikes" : 12
},
{
"UserMessage" : "Awesome",
"UserLikes" : 4
}
]
} একটি সংগ্রহ থেকে সমস্ত নথি ফেরত দেওয়ার জন্য নিম্নোক্ত ক্যোয়ারী
> db.queryToEmbeddedDocument.find({"PostDetails.UserLikes": {$gte: 8}},{PostDetails:1}).pretty(); এটি নিম্নলিখিত আউটপুট তৈরি করবে
{
"_id" : ObjectId("5c988a9f330fd0aa0d2fe4bd"),
"PostDetails" : [
{
"UserMessage" : "Hello",
"UserLikes" : 8
},
{
"UserMessage" : "Hi",
"UserLikes" : 6
},
{
"UserMessage" : "Good Morning",
"UserLikes" : 12
},
{
"UserMessage" : "Awesome",
"UserLikes" : 4
}
]
} উপরের নমুনা আউটপুটটি দেখুন, আমরা সমস্ত নথি পাচ্ছি যখন আমরা কেবল সেই নথিগুলি চাই যেখানে "ইউজারলাইক" 8 এর থেকে বড় বা সমান।