sql >> Database >  >> NoSQL >> MongoDB

MongoDB vind waar sleutel gelijk is aan string uit array

Wat je hebt gepost zou moeten werken - geen lus nodig. De $in operator doet het werk:

> db.Room.insert({ "_id" : 1, name: 'first'});
> db.Room.insert({ "_id" : 2, name: 'second'});
> db.Room.insert({ "_id" : 3, name: 'third'});
> // test w/ int
> db.Room.find({ "_id" : { $in : [1, 2] }});
{ "_id" : 1, "name" : "first" }
{ "_id" : 2, "name" : "second" }
> // test w/ strings
> db.Room.find({ "name" : { $in : ['first', 'third'] }});
{ "_id" : 1, "name" : "first" }
{ "_id" : 3, "name" : "third" }

Is dat niet wat je verwacht?

Getest met MongoDB 2.1.1




  1. Mongoose vindt de laatste tien vermeldingen in de database

  2. HBase-prestaties CDH5 (HBase1) versus CDH6 (HBase2)

  3. MongoDB findOneAndUpdate()

  4. Lazy Loading/Meer gegevens scrollen in Mongoose/Nodejs