mongodb在查询结果中查询的操作要怎么弄
发布于 10 年前 作者 l3ve 4899 次浏览 最后一次编辑是 8 年前

文章有2个属性 一个是热度,一个是时间. 我想获取热度最高的4篇文章之后,去除这4篇文章,其他的按时间排序
mongodb要怎么写呀 获取4篇我知道怎么弄 后面代码要怎么写

6 回复

写在获取文章方法的callback里面就可以了, 在callback里面执行删除文章。

不是要 删除掉 只是想跳过而已 问题是怎么写 才能既要去除热度前4,而且排序还要按时间排 callback里面 可以按时间排序?

感觉只能把结果扫描一遍勒~

db.posts.aggregate([
  { $sort: { hotness: -1 } },
  { $skip: 4 },
  { $sort: { updateAt: -1 } },
  { $limit: 20 } // optional
], function(err, docs) {
})

aggregate稍微查了下 要的就是这种函数 待会去试试 谢了

@taufik

顺便可以去看看 mongodb 的 mapreduce。aggregate 是简化版。

回到顶部