Cóż, potrzebujesz $group
ale możesz po prostu użyć stałej (np. null
, zobacz dokumentację
) dla jego id
tak, aby powstała jedna grupa. $$ROOT
następnie odnosi się do samego dokumentu, którego możesz użyć z $first
i $last
lubię tak
$group: {
_id: null,
first: { $first: "$$ROOT" },
last: { $last: "$$ROOT" }
}
Oczywiście możesz wprowadzić kolejny $project
etapy kształtowania tych danych w tablicę (jak wspomniałeś, chcesz listę) itp.
Na marginesie możesz wprowadzić $sort
etap, aby upewnić się, że $first
i $last
mają właściwe znaczenie.