使用Mongoose同时排序和聚合

时间:2017-09-26 03:32:25

标签: node.js mongodb mongoose

我有一些模型基本上是:

所有者有很多事情

事情有很多用途

我想通过汇总Thing的用途来对所有者进行排序,其中uses.good = true。

基本上我必须有条件地过滤某些用途,获取每个Thing的最终数组的长度,然后对它们求和并按它排序。

这是我到目前为止的近似值:

let owners = await Owner.find().populate({
      path: 'things',
      populate: {
        path: 'uses',
        match: {
          good: true 
        }
      }
    }).sort({
      uses : -1
    }).exec()

遇到排序问题,不确定这是否是最佳方法,或者我是否应该使用聚合。

0 个答案:

没有答案