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

条件に基づいてMongoDBAggregationに値が増加するフィールドを追加します

    この集計により、カウンター付きのフィールドが追加されます:

    db.collection.aggregate( [
      { 
          $match: { 
              joining_date: { $exists: true } 
          } 
      },
      { 
          $group: { 
              _id: null, 
              docs: { $push: "$$ROOT" } 
          } 
      },
      { 
          $project: { 
              _id: 0,
             R: { 
                 $map: {
                     input: { $range: [ 0, { $size: "$docs" } ] },
                     in: {
                         $mergeObjects: [ 
                             { joining_date_count: { $add: [ "$$this", 1 ] } },
                             { $arrayElemAt: [ "$docs", "$$this" ] }
                         ]
                     }
                 }
             }
          }
      },
      { 
          $unwind: "$R" 
      },
      { 
          $replaceRoot: { newRoot: "$R" } 
      }
    ] )
    


    1. $ inを使用したMongoDBでの結果の順序?

    2. Javaを使用してMongoDBでドキュメントの一括更新を実行するにはどうすればよいですか?

    3. .getBounds()関数を使用して特定の範囲(円)内のポイントのみを表示できない(リーフレット)

    4. Mongo Javaドライバーからdb.Collection.stats()を呼び出す方法