gpt4 book ai didi

node.js - 使用 node.js 从 MongoDB 中选择最后 N 条记录

转载 作者:IT老高 更新时间:2023-10-28 13:21:54 25 4
gpt4 key购买 nike

注意:我看过 other question 并尝试了它的答案,但没有运气。

我在 MongoDB 中有一个集合:

{ _id: 1, category_id: 1, time_added: 1234567890, name: "abc" }

我需要从 category_id 中找到最后 10 个等于 10 的条目。听起来很简单?

collection.find({ 'category_id': 10 }, {}, { _id: -1, limit : 10}, function (e, d) {});

但是运行它会给我first 10条记录而不是最后10条。看起来驱动程序优先于“限制”而不是“排序”......我也尝试使用 $natural 并在 time_added 上进行排序。每当我从命令行运行相同的查询时 - 我得到了我需要的东西。这是我在命令行中输入的内容:

collection.find({ 'category_id': 10 }).sort({_id: -1}).limit(10)

我做错了什么?有没有其他方法可以用 node.js 做到这一点?

最佳答案

结果表明 node.js 以与命令行界面相同的方式接受函数调用。每个函数都有最后一个可选参数作为回调函数。所以这段代码运行并返回正确的结果:

collection.find({ 'category_id': 10 }).sort({_id: -1}).limit(10, function (e, d) {})

关于node.js - 使用 node.js 从 MongoDB 中选择最后 N 条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20294626/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com