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

mongodbの別のクエリで前のクエリの結果を使用する

    $matchで集計を使用できます 条件と$lookupに一致させる ローカルフィールドをマッピングするにはuser userに コレクション_id フィールド:

    db.a.aggregate(
        [{
            $match: {
                "type": ObjectId("50ed90f5a70defef23000002"),
                "config.name": "alpha"
            }
        }, {
            $lookup: {
                from: "users",
                localField: "user",
                foreignField: "_id",
                as: "users"
            }
        }, {
            $unwind: "$users"
        }]);
    

    Javascriptでは、mongoose たとえば、これは:

    で実行できます。
    YourModel.aggregate(
        [{
            $match: {
                "type": ObjectId("50ed90f5a70defef23000002"),
                "config.name": "alpha"
            }
        }, {
            $lookup: {
                from: "users",
                localField: "user",
                foreignField: "_id",
                as: "users"
            }
        }, {
            $unwind: "$users"
        }],
        function(err, result) {
            console.log("lastname : " + result.users.lastname);
        });
    


    1. C ++ Redisモジュールの作成-RedisModule_OnLoad()シンボルをエクスポートしません

    2. GridFs(MongoDb)でのファイルの作成

    3. CentOS7へのMongoDBのインストール

    4. mongoDB Aggregation:配列名に基づく合計