Comment faire cette requête MongoDB en utilisant java?
Je dois écrire une simple MongoDB
requête à l'aide de java
mais je ne suis pas en mesure de le faire.
Les mongo de la requête ressemble à ceci:
db.yourCollection.find({"$where" : "this.startDate < this.endDate"})
Je dois écrire la requête ci-dessus à l'aide de la QueryBuilder
classe. Mais je ne suis pas en mesure de le faire dans MongoDB
java
pilote.
BasicDBObject document = new BasicDBObject();
document.put("id", 1001);
document.put("intValue", 1200);
document.put("updateValue", 2100);
DBObject query = QueryBuilder.start("intValue").lessThan("updateValue").get();
DBCursor cursor = collection.find(query);
while (cursor.hasNext()) {
System.out.println("Result : -"+cursor.next());}
Le code ci-dessus ne renvoie aucun résultat. Mais en cas de changement de updateValue
en 2100
c'est donner raison. Ma question ici est de lessThan
prend l'objet en tant que paramètre d'entrée. Alors, comment puis-je passer le document de champ comme un paramètre d'entrée?
source d'informationauteur zulu | 2013-01-14
Vous devez vous connecter pour publier un commentaire.
Idéalement mongoDB requête devrait ressembler à ceci: -
qui peut être écrit en Java comme ceci: -
Vous pouvez prendre un coup d'oeil à Tutoriel Officiel
Si vous souhaitez utiliser QueryBuildervous pouvez le faire comme ceci: -
QueryBuilder permet de construire des requêtes complexes pour récupérer des données à partir d'une collection de mongo db.
Vous pouvez utiliser le QueryBuilder comme ça.