【发布时间】:2019-02-21 19:01:57
【问题描述】:
我有一个收藏Users:
{
_id: "5cds8f8rfdshfd"
name: "Ted"
attending: [ObjectId("2cd9fjdkfsld")]
}
我还有一个收藏Events:
{
_id: "2cd9fjdkfsld"
title: "Some Event Attended"
},
{
_id: "34dshfj29jg"
title: "Some Event NOT Attended"
}
我想返回给定用户参加的所有活动的列表。但是,我需要从 Events 集合中执行此查询,因为这是更大查询的一部分。
我已经解决了以下问题:
- $lookup on ObjectId's in an array - 这个问题将数组作为本地字段;我的是外国的
- MongoDB lookup when foreign field is an array of objects - 数组本身就是对象
- MongoDB lookup when foreign field is an array
我尝试了各种方法来修改上述答案以适应我的情况,但都没有成功。第三个问题中的second answer 最接近我,但我想过滤掉不匹配的结果,而不是让它们返回值为 0。
我想要的输出:
[
{
_id: "2cd9fjdkfsld"
title: "Some Event Attended"
},
]
【问题讨论】:
-
您想要的输出文档是什么样的?
-
已更新为所需的输出。
标签: mongodb mongodb-query aggregation-framework mongojs