MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Wie führe ich eine dynamische Anzahl von Kriterien in mongoose.find aus?

Sie können Ihr Abfrageobjekt basierend auf der Auswahl programmgesteuert aufbauen. Zum Beispiel:

var selections = [0, 1];
var query = { $or: [] };
for (var i=0; i<selections.length; i++) {
  var selection = selections[i];
  query.$or.push({ 
    Category: Books.CatSelect[selection], 
    Pages: { $gte: Books.MinPages[selection] } 
  });
}
MyCollection.find(query).exec(function(err, result){
  //...
}