计算子文档上的Mongodb聚合

时间:2014-07-09 03:55:52

标签: node.js mongodb mapreduce aggregation-framework

我正在开发具有mongodb模型的照片共享应用程序,该模型看起来有点像:

    Location = { _id : id, address : address, name : name } 

    Photo = { 
         _id: id, 
         _upvotes : [{ ref to User }], 
         _location : {ref to Location}, 
         url: url, 
         selected : boolean 
 }

我想要修改的代码的快速概述(nodejs / expressjs / mongoose):

Photo.find({})
     .populate('_location')
     .stream({ objectMode : true })
     .pipe(res);//res being response stream in express.js

有没有办法以这样的方式查询Photo模型:

If there is no Photo.selected in a Location
Then find the photo with maximum votes, by counting the length of upvotes

我使用MongoDBs mapReduce实现,agregation框架和$ where运算符进行了深入研究,但没有找到出路。

如果有任何其他问题或引用可能导致答案或特定方法,请告知我们。

0 个答案:

没有答案