MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

MongoDB :Jak pomnożyć pole, które pojawia się tylko w $project?

Użyj słowa kluczowego addFields po użyciu klucza w projekcie.

 const LEAD_PRICE  = ....; // doesn't matter 
  Client.aggregate(
      [
        {
          $lookup: {
            from: "clientboughtleads",
            localField: "_id",
            foreignField: "Client",
            as: "ClientLeads"
          }
        },
   {
     $addFields: {
       TotalPurchasedLeads: {
              $size: "$ClientLeads"
          }
     }
   },
        {
          $project: {
            ClientId: "$_id",
            RegistrationDate: "$date",
            TotalPurchasedLeads:1,
            IncomeFromClient: {     // This one is always undefined
              $multiply: [LEAD_PRICE / 2, "$TotalPurchasedLeads"]
            }
          }
        }
      ]


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. explain() w Mongodb:różnice między nscanned i nscannedObjects

  2. Grupuj według przedziałów dat

  3. Status zestawu replik MonogoDB nie zmienia się z początkowego na drugorzędny

  4. Dlaczego Mongo przechowuje moją datę jako ciąg?

  5. Wyodrębnij dwie wartości tablicy podrzędnej w mongodb przez $elemMatch