我正在使用node.js和MongoDB。我有下一个模式的集合:
var project = new Schema({
head:{
head_task: String,
userID: String
},
access_users: {
type : Array ,
"default" : []},
context_task: [{
from_name: String,
status: Boolean,
task: String,
created_task: {
type: Date,
default: Date.now()
}
}],
created: {
type: Date,
default: Date.now
}});
如何通过DESC的字段context_task.created_task来获取文档排序。 我认为我必须使用聚合查询
db.tasks.aggregate({$match :{"_id":ObjectId("590e2d7d4d4a5e0b647d0835")}},
{$sort: {"context_task.created_task": -1}}).pretty();
但排序不起作用。 也许我必须在客户端上对数据进行排序? 任何人都可以帮我解决这个问题吗?
答案 0 :(得分:0)
$ sort 已弃用。你需要在find中使用sort函数。
db.tasks.find({_id : "590e2d7d4d4a5e0b647d0835" })
.sort({context_task.created_task : 1})
.limit(1)