I øjeblikket er sortering ikke mulig direkte inde i array-objekter,
Du kan vælge mellem 2 muligheder,
- hvis du får data fra opslag, så brug opslag med pipeline
det vil tillade at bruge
$sort
pipeline i matchdokumenter - $vind arrayet af => $sortér det => $grupper det igen i array, Henvis SO Svar
her bruger du $lookup
, i stedet for simpelt opslag kan du bruge "$opslag med pipeline".
{
$lookup: {
from: "tags",
as: "tags",
let: { id: "$_id" },
pipeline: [
{
$match: {
$expr: { $eq: ["$$id", "$tag_type"] }
}
},
{
$sort: { order: -1 }
}
]
}
},
Anden mulig løsning:Legeplads