2016-08-06 12 views
0

複数のコレクションからデータにアクセスする際に左外部結合を実行するにはどうすればよいですか? DB_Marketに一致するものがなくても、コレクションから詳細を取得したい。現在、条件を使用してさらにフィルタリングすると、内部結合を実現できます。しかし、私はまた、これに加えて外側を残す必要があります。mongoDBスクリプトを使用して左外部結合を実行できません

サンプルコード

db.new.aggregate([ 
{ 
    "$lookup": { 
       "from": "DB_Market", 
       "localField": "var1", 
       "foreignField": "var1", 
       "as": "collection2_doc" 
      } 
}, 

{"$unwind": "$collection2_doc" }]) 

答えて

1

私はあなたが左外部結合を行うことができると思います。あなたが$unwindを行っている場合は、preserveNullAndEmptyArraystrue

db.new.aggregate([ 
    { 
     $lookup: { 
        "from": "DB_Market", 
        "localField": "var1", 
        "foreignField": "var1", 
        "as": "collection2_doc" 
       } 
    }, 

    {$unwind: { path: "$collection2_doc", preserveNullAndEmptyArrays: true } } 

    ]) 
であることを確認してください
関連する問題