使用javascript / node.js在mongodb中查找带有另一个条件的对象的最早date
现在,假设我在模型文件中定义了一个数据库:
MessageSchema = mongoose.Schema({ message: String, sessionRef: { type: mongoose.Schema.Types.ObjectId, ref:'Session' }, dateCreated: { type: Date, default: Date.now } });
在另一个文件中,我将这个消息声明为:
var Message = require("../models/message");
现在,我想使用mongoose创build一个查询,find具有特定sessionRef的最早的消息。 举个例子:
Message.find({sessionRef : 123456})
这可以用来查找具有特定sessionRef的消息,但是我如何才能find最早的消息(按照dateCreatedsorting)?
按照最早的datesorting的方法是:
Message.find({sessionRef : 123456}) .sort({'dateCreated': 'desc'}) .exec(function(err, messages) { //first item is a earliest message });
或者如果你想只返回一个项目,你可以使用findOne
:
Message.findOne({sessionRef : 123456}) .sort({'dateCreated': 'desc'}) .exec(function(err, message) { //the message is the earliest });
- Gulp:运行没有目的地的任务
- Node.js和Multer – 在callback函数(req,res)中处理上传文件的目的地
- 由node.js服务中的socket.io事件使用的套接字
- node.js在res.writeHeads()函数内使用一个variables
- TypeError:promise.then(…).then(…).then(…).then(…).catch不是Node Js中的函数
- 是明确的身体parsing器asynchronous?
- 使用Grunt启动Express服务器
- 承诺与每个asynchronous调用
- Node + Express:Express是否为每个请求处理程序克隆req和res对象?