आप किसी सरणी को सीमित करने के लिए $slice ऑपरेटर का उपयोग कर सकते हैं। आइए दस्तावेजों के साथ एक संग्रह बनाएं। निम्नलिखित प्रश्न है
> db.limitAnArrayDemo.insertOne( ... { ... _id: 101, ... "PlayerName": "Bob", ... "PlayerDetails": {Age:23,isStudent:true}, ... "PlayerGameScores": [234,5767,58,67,78,90,1002,576,68,45,23,45,678,89,78 ] ... } ... ); { "acknowledged" : true, "insertedId" : 101 }
खोज () विधि की मदद से संग्रह से सभी दस्तावेजों को प्रदर्शित करने के लिए क्वेरी निम्नलिखित है
> db.limitAnArrayDemo.find().pretty();
यह निम्नलिखित आउटपुट उत्पन्न करेगा
{ "_id" : 101, "PlayerName" : "Bob", "PlayerDetails" : { "Age" : 23, "isStudent" : true }, "PlayerGameScores" : [ 234, 5767, 58, 67, 78, 90, 1002, 576, 68, 45, 23, 45, 678, 89, 78 ] }
MongoDB में एक सरणी उप-तत्व को सीमित करने के लिए क्वेरी निम्नलिखित है। नीचे दी गई क्वेरी अंतिम से केवल 10 तत्व प्रदर्शित करेगी
> db.limitAnArrayDemo.find({}, {PlayerName:1, PlayerDetails: 1, PlayerGameScores:{$slice: -10}}).pretty();
10 PlayerGameScores प्रदर्शित करने वाला आउटपुट निम्न है
{ "_id" : 101, "PlayerName" : "Bob", "PlayerDetails" : { "Age" : 23, "isStudent" : true }, "PlayerGameScores" : [ 90, 1002, 576, 68, 45, 23, 45, 678, 89, 78 ] }