$slice
Controls the number of elements returned from an array field, allowing you to limit array results or skip elements.
Syntax
{ <field>: { $slice: <number> } } or { <field>: { $slice: [<skip>, <limit>] } }
Parameters
field
stringrequiredArray field name to slice elements from
number
numberNumber of elements to return (negative for last N elements)
skip
numberNumber of elements to skip from beginning
limit
numberMaximum number of elements to return after skip
Examples
Limit array results
Return only first 3 elements from comments array
Query:
db.posts.find({}, { title: 1, comments: { $slice: 3 } })
Output:
Posts with title and only first 3 comments from comments array