27

私は次のドキュメント構造を持っています:

{
   "_id":"12345",
   "value":{
      "T":0,
      "v":[
         {
            "name":"JW",
            "cost":100
         }
      ]
   }
}

名前キーを照会するにはどうすればよいですか?ドット表記を試しましたが、運がありませんでした(2つのレベルでしか機能しないと思います)

4

2 に答える 2

35

何を試したのか正確にはわかりませんが、上記のドキュメントをname次の方法で見つけることができます。

db.collection.find({ "value.v.name": "JW" })

参照

于 2012-07-24T21:50:36.073 に答える
18

$elemMatch演算子を使用する必要があります:

db.collection.find({
    'value.v': { 
        $elemMatch: {
            name: 'JW', // "name == 'JW'"
            cost : 100 //if you need "&& cost == 100"
        }
    }
});

モンゴのドキュメント

于 2014-01-26T00:07:31.910 に答える