【发布时间】:2017-07-04 15:24:25
【问题描述】:
我有一组由 20 到 500 个嵌套文档组成的父文档。如何限制每个父文档显示的嵌套文档的数量。
下面是我的文档和嵌套文档的结构。
[{
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 ] }
}}
]);
【问题讨论】: