1. Je sais comment requête avec l'expression JavaScript Mongo shell (nom de la collection est le nom resource_phys
sur le terrain. Est val
qui définit comme chaîne type et ne contient que valeur numérique):Comment faire requête MongoDB avec l'expression JavaScript dans le code Java, comme Shell à Mongo
//in Mongo shell:
var query1 = ("Number(this.val)>-1 && Number(this.val)<3")
db.resource_phys.find(query1)
//result found
2. maintenant, je veux faire la même chose dans le code Java mais ne peut pas trouver une API pour soutenir JavaScript. Je sollicite votre aide pour donner quelques conseils.
3.P.s. Si le champ val
est de type numérique, je suis au courant de l'utilisation de l'opérateur $gt
et $lt
:
//in Java codes:
DBCollection coll = db.getCollection("resource_phys");
DBObject query2 = new BasicDBObject("val",new BasicDBObject("$gt",-1).append("lt",3));
DBCursor cursor = coll.find(query2);
//result got in cursor
Incroyable! Génial! Fabuleux! Merci! --- J'ai essayé d'utiliser $ where mais pas travaillé, mais maintenant votre code fonctionne bien. Aussi étrange! Et je connaissais le problème de performance, mais laissez-le maintenant ... Merci encore! – user3583514