考虑查询
EightWeekGamePlan.aggregate(
[
{
$group: {
_id: {
LeadId: "$LeadId",
BusinessName: "$BusinessName",
PhoneNumberMasque: "$PhoneNumberMasque",
City: "$City",
Rooms: "$Rooms",
dateToString: { format: "%Y-%m-%d", date: "$InserDate" }
},
Weeks: {
$push: {
Week: "$Week",
Status: "$Status",
InsertDate: "$InsertDate"
},
// $sort: { Week: 1 } // doesn't work
}
}
}
]
如何用Weeks
对嵌套数组Week
进行排序(这是1到8之间的数字)?
我尝试使用$sort: { Week: 1 }
,但查询没有成功。
答案 0 :(得分:2)
在$sort
阶段之前使用$group
EightWeekGamePlan.aggregate([
{ $sort: { Week: 1 }},
{ $group: {
_id: {
LeadId: "$LeadId",
BusinessName: "$BusinessName",
PhoneNumberMasque: "$PhoneNumberMasque",
City: "$City",
Rooms: "$Rooms",
dateToString: { format: "%Y-%m-%d", date: "$InserDate" }
},
Weeks: {
$push: {
Week: "$Week",
Status: "$Status",
InsertDate: "$InsertDate"
}
}
}}
])