У меня есть массив родительских документов, состоящий из вложенных документов в диапазоне от 20 до 500. Как ограничить количество вложенных документов, отображаемых для каждого родительского документа.Как ограничить количество вложенных документов, показанных в MongoDB
Ниже представлена структура документа и вложенного документа.
[{
id
title
users: [{
user_id: 1,
timestamp: 2354218,
field3: 4
}, {
user_id: 1,
timestamp: 2354218,
field3: 4
}, {
user_id: 1,
timestamp: 2354218,
field3: 4
},
...
]
}, {
},
...
]
Я хочу, чтобы ограничить число пользователей, показанных для каждого родительского документа. как?
Мой запрос
db.movies.aggregate(
[{$match: {
"movie_title": "Toy Story (1995)"}
},{
$lookup: {
from: "users",
localField: "users.user_id",
foreignField: "users.id",
as: "users"
}
},
{$project: {
movie_title: "$movie_title",
users: { $slice: [ "$users", 1 ] }
}}
]);
Я показал запрос, который я использую с помощью ломтика $, как вы упомянули. но я не думаю, что это работает –
Надеюсь, вы уже поняли это. – Veeram
Как ограничить количество полей, отображаемых в «users». например, у меня есть пользователи zip_code, профессия, пол, возраст, ... Я хочу показать только zip_code и занятие. –