是否可以选择插入到当前使用 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/