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

Mongodb選択したフィールドを取得して集計から返すようにしています

    ここで大まかに言えば、 $ project 「右側」のドキュメントのフィールドプロパティへの「絶対パス」に依存します。 1などのショートカット その要素が実際にドキュメントの最上位にある場所のためだけのものです。

    また、 $ group 、ここで、<などのさまざまなグループ化演算子を使用します。 code> $ first および $ addToSet または $ push 内部配列からプルしている情報を保持します。また、 $ unwind ここでも2回、ドキュメント間で「タイプ」を組み合わせており、 $ first この場合。

    OrderModel.aggregate([
        { "$unwind": "$products" },
        { "$unwind": "$products.types" },
        { "$group": {
            "_id": "$products.name",
            "active": { "$first": "$products.active" },
            "types": { "$addToSet": "$products.types" },
            "quantity": { "$sum": 1 }
        }},
        { "$project": {
            "_id": 0,
            "name": "$_id",
            "active": 1,
            "types": 1,
            "quantity": 1
        }}
    ],function(err,results) {
    
    });
    



    1. マングースを使用してコレクションの配列内のデータをクエリする方法

    2. マングースが実際の埋め込みドキュメントの代わりに[オブジェクト]を返す

    3. MongoDBのPerconaバックアップの概要

    4. Docker-compose、とにかくredis.confファイルを指定しますか?