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

$lookupに特定のフィールドを入力します

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

    新しい $lookup 使用できる構文 $project $lookup パイプライン

    db.collection.aggregate([
      { "$group": {
        "_id": "$userId",
        "projectId": { "$push": "$projectId" }
      }},
      { "$lookup": {
        "from": "users",
        "let": { "userId": "$_id" },
        "pipeline": [
          { "$match": { "$expr": { "$eq": [ "$_id", "$$userId" ] }}},
          { "$project": { "firstName": 1 }}
        ],
        "as": "user"
      }},
      { "$unwind": "$user" },
      { "$lookup": {
        "from": "projects",
        "let": { "projectId": "$projectId" },
        "pipeline": [
          { "$match": { "$expr": { "$in": [ "$_id", "$$projectId" ] }}},
          { "$project": { "projectName": 1 }}
        ],
        "as": "projects"
      }}
    ])
    



    1. MongoDbデータベースとコレクション

    2. PHPコードを使用してcsvをmongodbにインポートする

    3. オブジェクトの配列をクエリするマングースMongodb

    4. MongoDBを使用して、階層内のレコードの所有者を効率的に決定します