我有一个看起来像这样的JSON结构:
{
"_id":1,
"title":"a new board title",
"lists":[
{
"_id":1,
"title":"dasads",
"position":"c",
"cards":[{ id: 1, list_id: 1, title: "a card" }]
}
]
}
我通过在$ project聚合阶段映射列表来获得此结构:
{
'$map' => {
input: "$lists",
as: "list",
in: {
'$mergeObjects' => [
"$$list",
{
cards: {
'$filter' => {
input: "$cards",
cond: {
'$eq' => ["$$this.list_id", "$$list._id"]
}
}
}
}
]
}
}
}
但是,我想按字母顺序对列表数组和每个卡数组进行排序。我该怎么办?
还可以在地图阶段已经完成的时候进行排序,而不是为了更好的性能而再次展开吗?