sql >> データベース >  >> NoSQL >> MongoDB

mongodbの$sumで集計

    $addToSetを使用します アキュムレータ、次に $size 一意のprojectIdの数をカウントする演算子

    Worksheet.aggregate([
      { $match: conditions },
      { "$group": {
        "_id": null,
        "billingHours": {
          "$sum": {
            "$cond": [{ "$eq": ["$isBilling", true] }, "$hours", 0]
          }
        },
        "fixContract": {
          "$sum": {
            "$cond": [{ "$eq": ["$isBilling", true] }, 0, "$hours"]
          }
        },
        "projectIds": { "$addToSet": "$projectId" }
      }},
      { "$addFields": { "projectIds": { "$size": "$projectIds" }}}
    ])
    



    1. キーの命名規則を再確認しますか?

    2. MongoDBサーバーには、資格情報がなくてもアクセスできます

    3. MongoDB-DBRefフィールドタイプから$refのみを更新

    4. KoyebにMongoDBAtlasとApolloServerを使用してGraphQLAPIをデプロイします