私はこのようなコレクションを持っていると仮定します。モンゴクエリ
{ "arr" : [ { "name" : "a", "num" : 1 }, { "name" : "a", "num" : 2 } ] },
{ "arr" : [ { "name" : "b", "num" : 1 }, { "name" : "a", "num" : 2 } ] },
{ "arr" : [ { "name" : "b", "num" : 1 }, { "name" : "b", "num" : 2 } ] }
を、私はarr
がname
=「B」とnum
とサブ文書が含まれていますすべてのドキュメントを検索します私はこのようなクエリを行う場合= 2
:
db.collection.find({
$and: [
{ "arr.name": "b" },
{ "arr.num": 2 }
]
});
を彼らそれぞれがsuコマンドが含まれているので、それがコレクション内のすべての文書を返します。すべてのエラーをスローしませんが、まだ何も結果を返しません
db.collection.find({
arr: [
{ "name": "b", "num": 2 }
]
});
:私もこれを試してみた「B」のname
またはnum
2の
のいずれかでのB-文書。
MongoDBの複数のサブドキュメントフィールドをどのようにクエリしますか?
非常に便利で完全な答えです。アップビューを2回ほど行えないのは残念です。ありがとうNeil! – Moppo