最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

Nodejs Mongoose

运维笔记admin12浏览0评论

Nodejs Mongoose

Nodejs Mongoose

我正在使用Nodejs(express)+ MongoDB,并想问一下是否有办法访问数据库以获取一组文档(为简单起见,我们假设博客帖子中有喜欢计数和视图计数属性),首先按喜欢对结果进行排序在array1中计算一个商店然后再调用数据库再次按视图计数排序并将其存储在array2中,结果将是:

  • 1数据库访问
  • array1:按喜欢计数排序的博客文章
  • array2:按视图排序的博客文章

所以基本上我不想链接排序查询,但我希望输出是2个数组,每个数组按不同的标准排序。非常感谢。

回答如下:

您可以使用$facet聚合,如下所示:

db.blog.aggregate([
   {
      $facet: {
        sortByLikeCounts: [ { $sort: { likeCounts: -1 }} ],      // likeCounts is field name which is used to save total counts of like 
        sortByViewCounts: [ { $sort: { viewCounts: -1 }} ]       // viewCounts is field name which is used to save total counts of view
      }
   }
])

结果,您将得到两个按不同查询排序的独立数组。

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论