1
map reduce(reference)で可能ですが、2つのコレクションを結合するには、グループ(具体的には、keyf
の関数)を使用することが可能かどうかは疑問でした。Mongodbグループが2つのコレクションを結合する
MYCOLL.collection.group(:keyf => "function(doc) { var var2Item=db.mycoll2.find({\"_id\":doc.my_sub_id}); var2=var2Item.join_var; return {'myreturn': doc.var1 + var2 }; }",
:initial => { :r => 0 },
:reduce => "function(doc,prev) { prev.r += +1; }",
:cond => {(...my_conditions...)})
私も
var2=doc.my_sub_id.join_var
を試してみましたし、どちらが動いていないようにみえます。私はRubyドライバを使用していますが、クエリが(実質的に)未処理であるため、実際には重要ではありません。