sql >> Databasteknik >  >> NoSQL >> MongoDB

mongoDB:hitta efter inbäddat värde

Du kunde inte hitta det eftersom det är omöjligt. Ingen av sökoperatorerna fungerar på det schema du angav.

Den enklaste lösningen är att ändra schemat lite:

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

I ett sådant fall kan du fråga efter data med hjälp av följande fråga:

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


  1. En översikt över WiredTiger Storage Engine för MongoDB

  2. Morphia-fråga med eller operator

  3. Mongo-anslutning stängd i keystonejs app

  4. Hur får du strängvärdet för ett MongoID med PHP?