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

単一のmongodbクエリで検索してカウントする

    これは、集約フレームワークに最適な仕事です。

    db.course.aggregate(
        [
            { "$sort": { "created_at": -1 }},
            { "$group": {
                "_id": null, 
                "docs": { "$push": "$$ROOT" }, 
                "count": { "$sum": 1 }
            }},
            { "$project": { "_id": 0, "count": 1, "docs": { "$slice": [ "$docs", 5 ] } }}
        ]
    )
    

    MongoDBサーバーが $ slave> 次に、醜く非効率的なアプローチを使用する必要があります。

    db.course.aggregate(
        [
            { "$sort": { "created_at": -1 }},
            { "$group": {
                "_id": null, 
                "docs": { "$push": "$$ROOT" }, 
                "count": { "$sum": 1 }
            }},
            { "$unwind": "$docs" },
            { "$limit": 5 }
        ]
    )
    


    1. デフォルトのビューエンジンが定義されていないことをExpressが教えてくれるのはなぜですか?

    2. nginx uwsgi websockets 502アップストリームから応答ヘッダーを読み取っているときに、不正なゲートウェイアップストリームの接続が途中で閉じられました

    3. Ruby Mongoドライバー:日付間隔を探す方法は?

    4. node.jsmongojsfindOneコールバックがエラーをnullとして返す