0
私は別の「アイテム」コレクションのドキュメントをグループ化する「グループ」コレクションを持っています。 group
コレクションは、単にitem
コレクションのObjectIdの配列ですが、group
配列のオブジェクトをより複雑にして、さらに$in
と$nin
の演算子を使用できるようにしたいと考えています。
$in
演算子で使用される値をObjectIdだけでなくオブジェクトに変更するときに、$in
を使用するにはどうすればよいですか?
// current group document
{
_id: ObjectId(...),
items: [
ObjectId(...),
ObjectId(...)
]
}
// current item find query
db.item.find({ _id : { $in: group.items } }
私はあなたのfind()で使用するIDの単純な配列にあなたのグループの配列を変換し、次の
{
_id: ObjectId(...),
items: [
{ _id : ObjectId(...), name: '...' },
{ _id : ObjectId(...), name: '...' }
]
}