sql >> Databasteknik >  >> NoSQL >> MongoDB

Mongoose aggregeringsfråga returnerar mer än en post när den bara ska returnera en

Ändra qroup pipeline precis som

Du måste gruppera efter avsändare inte på unikt _id

{
          $group: {
            _id: "$sender",
            sender: {
              $first: "$sender"
            },
            messageId: {
              $first: "$_id"
            },
            text: {
              $first: "$text"
            },
            date: {
              $first: "$date"
            },
            unread: {
              $first: "$unread"
            }
          }
        }

Och ändra i $project

$project: {
            sender: 1,
            _id: "$messageId",
            text: 1,
            date: 1,
            unread: 1
          }



  1. Varför väntar detta utanför async-funktionen?

  2. Få dokument med taggar i listan, sorterade efter totalt antal matchningar

  3. Uppdatering av poster i MongoDB genom pymongo leder till radering av de flesta av dem

  4. Begränsa antalet fältreturer från mongodb i Meteor