Понастоящем сортирането не е възможно директно в обектите на масива,
Можете да направите една от двете опции,
- ако получавате данни от търсене, използвайте търсене с конвейер
това ще позволи да се използва
$sort
тръбопровод в съвпадащи документи - $развийте масива => $сортирайте го => отново $групирайте го в масив, Вижте SO Отговор
тук използвате $lookup
, вместо просто търсене можете да използвате "$lookup с тръбопровод".
{
$lookup: {
from: "tags",
as: "tags",
let: { id: "$_id" },
pipeline: [
{
$match: {
$expr: { $eq: ["$$id", "$tag_type"] }
}
},
{
$sort: { order: -1 }
}
]
}
},
Второ възможно решение:Playground