MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

MongoDB obtém o primeiro e o último documento na consulta agregada


Bem, você precisa de $group mas você pode simplesmente usar uma constante (por exemplo, null , consulte os documentos ) para seu id para que resulte em um único grupo. $$ROOT então se refere ao próprio documento que você pode usar com $first e $last igual a
$group: {
  _id: null,
  first: { $first: "$$ROOT" },
  last: { $last: "$$ROOT" }
}

Claro que você pode introduzir mais $project estágios para moldar esses dados em uma matriz (como você mencionou que deseja uma lista) etc.

Como uma nota lateral, você pode querer introduzir um $sort para ter certeza de que $first e $last ter um significado adequado.