MongoDB-এ নির্দিষ্ট ফিল্ড প্রজেক্ট করার সাথে সাথে অ্যারে ফিল্ড থেকে নির্দিষ্ট রেঞ্জের এলিমেন্ট বের করতে $slice অপারেটর ব্যবহার করুন।
উদাহরণ
অ্যারে ফিল্ড সহ ডকুমেন্ট তৈরি করুন:
> db.limitAndSliceProjectionDemo.insertOne({
"_id": 101,
"UserName": "Carol",
"UserAge": 26,
"UserMesssage": ["Hi", "Hello", "Bye", "Awesome", "Good", "Bad", "Nice", "Good Night", "Good Morning"]
});
{ "acknowledged" : true, "insertedId" : 101 }
ডকুমেন্টটি দেখুন:
> db.limitAndSliceProjectionDemo.find().pretty();
আউটপুট:
{ "_id" : 101, "UserName" : "Carol", "UserAge" : 26, "UserMesssage" : [ "Hi", "Hello", "Bye", "Awesome", "Good", "Bad", "Nice", "Good Night", "Good Morning" ] }
ফিল্ড লিমিট এবং স্লাইস একসাথে (2 নম্বর ইনডেক্স থেকে ৪টি এলিমেন্ট)
> db.limitAndSliceProjectionDemo.find(
{ "UserName": "Carol" },
{ "_id": 0, "UserName": 0, "UserAge": 0, "UserMesssage": { "$slice": [2, 4] } }
).pretty();
আউটপুট:
{ "UserMesssage" : [ "Bye", "Awesome", "Good", "Bad" ] }
ব্যাখ্যা:
{ "_id": 0, "UserName": 0, "UserAge": 0 }— এই ফিল্ডগুলো বাদ দেওয়া হয়েছে।"UserMesssage": { "$slice": [2, 4] }— ২ নম্বর ইনডেক্স (০-ভিত্তিক) থেকে শুরু করে ৪টি এলিমেন্ট বের করা হয়েছে। অর্থাৎ ৩য়, ৪র্থ, ৫ম এবং ৬ষ্ঠ এলিমেন্ট।
$slice ভেরিয়েশন:
$slice: n— শুরু থেকে nটি।$slice: -n— শেষ থেকে nটি।$slice: [skip, limit]— skip সংখ্যা বাদ দিয়ে limit সংখ্যা।