node.js - 从 mongoDB 获取最后 30 条记录

标签 node.js mongodb

是否可以选择插入到当前使用 find 并发出所有参数的 mongoDB 中的最后 30 条或任意数量的记录。

db.tweets.find({}, function(err, docs){
    response.end(JSON.stringify(docs));
});

我不确定大括号中需要包含什么内容。

最佳答案

mongo-native 的 find() 语法(与 mongoskin 相同)是:

find(query[, options], callback)

find(query[, options]).toArray(callback)

第一个参数是搜索条件,因此它不能在那里,但可以将限制放在可选的第二个参数中。像这样的事情:

db.tweets.find({}, {limit: 30}).toArray(function(err, docs){

  response.end(JSON.stringify(docs));
});

更新:您还可以指定“排序”来获取最后 30 个。如下所示:{limit:30,排序:[“timestamp”,“desc”]}(“desc”或-1,don'不记得语法)其中“时间戳”是您要排序的字段。

关于node.js - 从 mongoDB 获取最后 30 条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24696837/

相关文章:

mongodb - 是否可以在不从 shell 安装的情况下运行 CouchDB?

javascript - 从手机发送文件到 Node js 服务器

javascript - Q promise 传播错误和异常

javascript - mongoDB - $push _id 到特定用户

mongodb - 我应该如何配置我的 Mongodb 集群?

node.js - Mongodb 服务器套接字在 replSet 上关闭

javascript - 在 Node.js 上为用户排队的一种方法

image - Node.js:不使用 ImageMagick 调整图像大小

jquery - 在 Electron 中,发出 ajax 请求的最佳方式是什么?

javascript - 如何为 Sails.js 创建启动/停止/重启 Linux 服务