これは、マルチレベルの埋め込みドキュメントをフィルタリングする動作です。通常、整合フィルターは、サブセットではなく、ドキュメント全体を返します。
通常、positional operator $
updates
のサブドキュメントと照合するために使用されます 。ただし、この機能はリターン指定子にはまだ実装されていません。
mongoにはすでに未解決の問題があります
したがって、これを処理するにはスキーマを再設計する必要があります。次のようになります
db.test.insert({"person" : [ { "id":1, "details" : { "name" : "Aswini", "Age" : 10 }}]})
db.test.insert({"person" : [ { "id":2, "details" : { "name" : "Mahesh", "Age" : 11}}]})
db.test.find({"person.id":1},{'person.details':1})