मान लीजिए नीचे बाएँ निर्देशांक और ऊपरी दाएँ निर्देशांक क्रमशः हैं [0, 0]
और [100, 100]
. MongoDB 3.2 से आप $slice
. का उपयोग कर सकते हैं ऑपरेटर एक सरणी का सबसेट वापस करने के लिए जो आप चाहते हैं।
db.collection.aggregate([
{ "$match": {
"loc": {
"$geoWithin": {
"$box": [
[0, 0],
[100, 100]
]
}
}}
}},
{ "$group": {
"_id": "$name",
"submitted": { "$max": "$submitted" },
"preview": { "$first": "$preview" }
"locs": { "$push": "$loc" }
}},
{ "$project": {
"locs": { "$slice": [ "$locs", 5 ] },
"preview": 1,
"submitted": 1
}},
{ "$limit": 10 }
])