MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Използвайте Aggregate с $group в mongodb

Не е необходимо да използвате $lookup тук. Обикновено $group с $cond ще свърши работа.

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



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Групиране по интервали от дати

  2. Mongoose запази _id'ss като низ вместо ObjectId

  3. Как да маршалирам json низ към bson документ за запис в MongoDB?

  4. MongoDB $strcasecmp

  5. MongoDb $lookup заявка с множество полета от масив обекти