MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

MongoDB erhält individuelle Zählungen aus Sdocuments mit Vergleichsoperationen

Sie können die folgende Aggregation verwenden

db.collection.aggregate([
  { "$match": {
    "$expr": {
      "$gte": [
        { "$size": {
          "$filter": {
            "input": "$managers",
            "cond": { "$eq": ["$$this.role", "HR"] }
          }
        }},
        2
      ]
    }
  }},
  { "$addFields": {
    "count": {
      "$size": {
        "$filter": {
          "input": "$managers",
          "cond": { "$eq": ["$$this.role", "HR"] }
        }
      }
    }
  }}
])