我正在使用node.js和MongoDB。我有收集與下面的模式:如何對集合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
}});
我怎樣才能通過文檔場context_task.created_task排序按降序。 我認爲我必須使用聚合查詢
db.tasks.aggregate({$match :{"_id":ObjectId("590e2d7d4d4a5e0b647d0835")}},
{$sort: {"context_task.created_task": -1}}).pretty();
但排序不起作用。 也許我必須對客戶端上的數據進行排序? 任何人都可以幫助我解決這個問題嗎?
請參閱本https://stackoverflow.com/questions/13449874/how-to-sort-array-inside-collection-record-in-mongodb –
並當您使用.find它的工作()? db.tasks.find({「_id」:ObjectId(「590e2d7d4d4a5e0b647d0835」)},{sort:「context_task.created_task」:1})? – Tamas
@Dinesh,謝謝,它幫助了我。 –