Mongodb 使用Mongo进行复杂查询

Mongodb 使用Mongo进行复杂查询,mongodb,monk,Mongodb,Monk,我认为这个问题很容易理解,但我找不到一个好的解决办法 在系统中,用户有一些偏好,以及此偏好的权重,例如: {_id: , name: "John", preferences: [{sku:"Golf", weight: 3}, {sku:"Football", weight: 4}, {sku:"Basketball", weight: 3}] } 因此,如果为用户生成一个提要,那么对于每10条请求的新闻,需要有3条篮球新闻、

我认为这个问题很容易理解,但我找不到一个好的解决办法

在系统中,用户有一些偏好,以及此偏好的权重,例如:

{_id: ,
 name: "John",
 preferences: [{sku:"Golf", weight: 3}, 
               {sku:"Football", weight: 4}, 
               {sku:"Basketball", weight: 3}]
}
因此,如果为用户生成一个提要,那么对于每10条请求的新闻,需要有3条篮球新闻、4条足球新闻和3条高尔夫新闻。因此,在我的新闻集合中,我需要一些支持分页的查询,考虑到权重,这些查询将始终以该用户的模式给出结果

将新闻收集简单地考虑如下:

{ _id: ,
  text: "A really nice Hole in One after a par"
  category: "Golf" 
},
{ _id: ,
  text: "Real Madrid wins"
  category: "Football" 
},
...
该查询必须根据用户权重向我提供新闻,并支持一些分页,现在我使用
$each
,但非常难看,可能性能非常差,有什么建议吗