MongoDB:通过2个数组进行查询
假设我有如下模式:MongoDB:通过2个数组进行查询,mongodb,mongoose,mongodb-query,aggregation-framework,Mongodb,Mongoose,Mongodb Query,Aggregation Framework,假设我有如下模式: Course: id, [ User ], [ Subscriber] 每个用户都有userId,每个订阅者都有一个订阅者id 现在,我得到了两个userid和subscriberid数组。 例如: 这些ID是objectID而不是字符串。 用户ID:[1,2,3]和订阅ID:[4,2,6] 现在我需要找到3门课程,其中用户ID和订阅ID为(1,4);(2,2) ; (3,6) 所以,这里我们不想要一个叉积 您可以这样做: .find({
Course:
id,
[ User ],
[ Subscriber]
每个用户都有userId,每个订阅者都有一个订阅者id
现在,我得到了两个userid和subscriberid数组。
例如:
这些ID是objectID而不是字符串。
用户ID:[1,2,3]和订阅ID:[4,2,6]
现在我需要找到3门课程,其中用户ID和订阅ID为(1,4);(2,2) ; (3,6)
所以,这里我们不想要一个叉积 您可以这样做:
.find({
$or: userIds.map((userId, index) => ({
User: userId,
Subscriber: subscriberIds[index]
}))
}).limit(3)
我尝试连接userId和subscriberId,但是我们不能连接两个objectid。