sql >> Database >  >> NoSQL >> MongoDB

Gebruik Aggregate met $group in mongodb

U hoeft $lookup hier. Eenvoudige $group met $cond zal het werk doen.

db.collection.aggregate([
  { "$group": {
    "_id": null,
    "billingHours": {
      "$sum": {
        "$cond": [{ "$eq": ["$isBilling", true] }, "$hours", 0]
      }
    },
    "fixContract": {
      "$sum": {
        "$cond": [{ "$eq": ["$isBilling", true] }, 0, "$hours"]
      }
    }
  }}
])



  1. Hoe het gemiddelde per dagveld berekenen met MongoDB?

  2. Mongo-shell voert query uit vanuit bestand en toont resultaat

  3. Betere uitleg van bson spec voorbeelden?

  4. Mongoose-aggregatie filtert niet op invoerdatum