假设我有一个包含许多键的博客文章架构,其中一个是作者(ObjectId) . 现在我有另一个Block用户集合,它包含两个键:userid(ObjectId)和userWhoHasBeenBlocked(ObjectId) .
现在在聚合中我想跳过那些作者等于userWhoHasBeenBlocked的集合 . 我的Approch:第一级我有一个匹配查询,它可以查看发布帖子的国家/地区 . 假设有一个国家的关键 .
在此之后,我有一个用于块用户集合的$ lookup查询
{ $match: { country: "usa" } },
{
$lookup:
{
from: "ublocks",
let: { whoHasBeenBlocked: "$author", currentUser: userid },
pipeline: [
{
$match:
{
$expr:
{
$and:
[
{ $eq: ["$blockedUser", "$$whoHasBeenBlocked"] },
]
}
}
},
],
as: "isBlocked"
},
}
},
{ $match: { "$author": { $ne: "$isBlocked.userId" } } }
}
在此之后我有$ projection块 . 这不起作用 . 如何在聚合中跳过文档 . 在此之后我也有分页 .