সমস্ত নথিতে অ্যারেতে সর্বশেষ এন্ট্রি খুঁজতে, aggregate() ব্যবহার করুন। আসুন নথি-
সহ একটি সংগ্রহ তৈরি করি> db.demo179.insertOne(
...{
... "Name":"Chris",
... "Details": [
... {
... "Id":101,
... "Subject":"MongoDB"
... },
... {
... "Id":102,
... "Subject":"MySQL"
... }
... ]
...}
...);
{
"acknowledged" : true,
"insertedId" : ObjectId("5e3980299e4f06af551997f9")
}
> db.demo179.insertOne(
...{
... "Name":"David",
... "Details": [
... {
... "Id":103,
... "Subject":"Java"
... },
... {
... "Id":104,
... "Subject":"C"
... }
... ]
...}
...);
{
"acknowledged" : true,
"insertedId" : ObjectId("5e39802a9e4f06af551997fa")
} Find() পদ্ধতি -
এর সাহায্যে একটি সংগ্রহ থেকে সমস্ত নথি প্রদর্শন করুন> db.demo179.find().pretty();
এটি নিম্নলিখিত আউটপুট −
তৈরি করবে{
"_id" : ObjectId("5e3980299e4f06af551997f9"),
"Name" : "Chris",
"Details" : [
{
"Id" : 101,
"Subject" : "MongoDB"
},
{
"Id" : 102,
"Subject" : "MySQL"
}
]
}
{
"_id" : ObjectId("5e39802a9e4f06af551997fa"),
"Name" : "David",
"Details" : [
{
"Id" : 103,
"Subject" : "Java"
},
{
"Id" : 104,
"Subject" : "C"
}
]
} সমস্ত নথিতে অ্যারেতে সর্বশেষ এন্ট্রিগুলি সন্ধান করার জন্য নিম্নলিখিত ক্যোয়ারী রয়েছে −
৷> db.demo179.aggregate([
... { "$unwind": "$Details" },
... { "$sort": { "Details.Id": -1 } },
... { "$limit": 2 },
... {
... "$group": {
... "_id": "$Details.Id",
... "Name" : { "$first": "$Name" },
... "Details": { "$push": "$Details" }
... }
... },
... {
... "$project": {
... "_id": 0, "Name": 1, "Details": 1
... }
... }
...]) এটি নিম্নলিখিত আউটপুট −
তৈরি করবে{ "Name" : "David", "Details" : [ { "Id" : 103, "Subject" : "Java" } ] }
{ "Name" : "David", "Details" : [ { "Id" : 104, "Subject" : "C" } ] }