Eh bien, vous avez besoin de $group mais vous pouvez simplement utiliser une constante (par exemple null , voir la documentation
) pour son id de sorte qu'il en résulte un seul groupe. $$ROOT
fait alors référence au document lui-même que vous pouvez utiliser avec $first et $last comme ça
$group: {
_id: null,
first: { $first: "$$ROOT" },
last: { $last: "$$ROOT" }
}
Bien sûr, vous pouvez introduire d'autres $project étapes pour façonner ces données dans un tableau (comme vous l'avez mentionné, vous voulez une liste), etc.
En remarque, vous pouvez introduire un $sort étape pour s'assurer que $first et $last avoir un sens propre.