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

制限を使用するときにMongoDBでドキュメントの総数を取得する

    Mongodb 3.4 $facetを導入しました 集計

    これは、同じ入力ドキュメントのセットで単一のステージ内の複数の集約パイプラインを処理します。

    $facetを使用する および$group $limitのドキュメントを見つけることができます 合計数を取得できます。

    以下の集計をmongodb3.4で使用できます

    db.collection.aggregate([
      { "$facet": {
        "totalData": [
          { "$match": { }},
          { "$skip": 10 },
          { "$limit": 10 }
        ],
        "totalCount": [
          { "$group": {
            "_id": null,
            "count": { "$sum": 1 }
          }}
        ]
      }}
    ])
    

    $countを使用することもできます mongodb 3.6で導入されたアグリゲーション 。

    以下の集計をmongodb3.6で使用できます

    db.collection.aggregate([
      { "$facet": {
        "totalData": [
          { "$match": { }},
          { "$skip": 10 },
          { "$limit": 10 }
        ],
        "totalCount": [
          { "$count": "count" }
        ]
      }}
    ])
    


    1. MongoDBアップサートが挿入または更新を行ったかどうかを確認します

    2. Springデータを使用した$projectMongoDB内の$filter

    3. Max Attempts Exceeded Exception queuelaravel

    4. MongoDBでJSONを使用していますか?