我试图限制每个user_id
字段的结果。
例如,我有一个用户 ID 列表,我想限制选择集中2 friends
的每个用户。friends
表:用户
{
name: String,
surname: String
}
表:朋友
{
user_id: ObjectId // refer to user
friend_id: ObjectId // refer to user
}
询问
我可以编写的最接近的查询如下:
var userIds = [1,2];
r.map(userIds, function(userId) {
return r.table('friends').filter(function(friend) {
return userId.eq(friend('user_id'));
}).limit(2).coerceTo('array');
});
结果:
[
[
{
user_id: 1,
friend_id: 2
},
{
user_id: 1,
friend_id: 3
},
],
[
{
user_id: 2,
friend_id: 3
},
{
user_id: 2,
friend_id: 4
},
]
]
我使用正确的方法吗?