2016-08-16 9 views
0

私はmongodbのオブジェクトの配列から特定のオブジェクトを見つけようとしています。特定の要素を検索する配列mongodb

私はこの

Company.findOne ({ 
"configuration.macAddress": "AB-90-dF-8d" 
}); 

をしようとしていますそれは私に正確な会社を返しますが、それは私はあなたが特定のオブジェクトを見つけるために$ elemMatchを使用することができます一致MACADDRESS

答えて

0

でのみ設定したいすべての設定配列 を返します。配列内にあります。

Company.find({configuration:{$ elemMatch:{macAddress: "AB-90-dF-8d"}}});

あなたのオブジェクトの配列を表示できますか?

0

代わりにaggregate()を使用してください。 $はコンフィギュレーション配列を最初にアンワインドしてから、特定の要素にのみ$をマッチさせることができます。

Company.aggregate([ 
    { 
     "$unwind": "$configuration" 
    }, 
    { 
     "$match":{ 
      "configuration.macAddress": "AB-90-dF-8d" 
     } 
    } 
]); 
関連する問題