Đối với vấn đề của bạn, bạn cần $slice
toán tử chiếu thay vì limit
. Càng về sau giới hạn số lượng tài liệu trả về là kết quả của truy vấn. Thay vào đó, $slice
toán tử dành cho chính xác những gì bạn cần.
Dưới đây là một ví dụ về cách sử dụng nó trong trường hợp sử dụng của bạn:
> db.getCollection('people').find({id: 2}, {_id: 0, animals: {$slice: [0, 3]}})
{
"id" : 2,
"name" : "Rob",
"animals" : [
"shark",
"snake",
"fish"
]
}