sql >> Database teknologi >  >> NoSQL >> MongoDB

mongoDB:find efter indlejret værdi

Du kunne ikke finde det, fordi det er umuligt. Ingen af ​​søgeoperatorerne virker på det skema, du har angivet.

Den nemmeste løsning er at ændre skemaet en lille smule:

db.coders.save( {
'name': 'John', 
'languages' : [ { n: 'php', v: 'bad'},{n:'java', v: 'good'},{n : 'brainfuck', v: 'very bad'}] 
});

I et sådant tilfælde kan du forespørge dataene ved hjælp af følgende forespørgsel:

db.coders.find({'languages.v' : 'good'})


  1. MongoDB:er det sikkert at bruge dokumentets ID offentligt?

  2. Mongodb - regex match af nøgler til underdokumenter

  3. præstationsproblem på Spring Data Mongodb

  4. Konverter mongodb return-objekt til ordbog