Obecnie sortowanie nie jest możliwe bezpośrednio w obiektach tablicy,
Możesz zrobić dwie opcje,
- jeśli otrzymujesz dane z wyszukiwania, użyj wyszukaj za pomocą potoku
pozwoli to na użycie
$sort
potok w dopasowanych dokumentach - $ rozwiń tablicę => $sortuj ją => ponownie $pogrupuj ją w tablicę, Odnieś się do SO Odpowiedź
tutaj używasz $lookup
, zamiast prostego wyszukiwania możesz użyć "$lookup z potokiem".
{
$lookup: {
from: "tags",
as: "tags",
let: { id: "$_id" },
pipeline: [
{
$match: {
$expr: { $eq: ["$$id", "$tag_type"] }
}
},
{
$sort: { order: -1 }
}
]
}
},
Drugie możliwe rozwiązanie:Plac zabaw