[英]Mongo Java query for and/or combination
我需要Java驱动程序mongo查询和/或组合-例如
假设我有一个集合用户,有3个名为a,b,c的字段。
现在,我必须执行查找查询,例如-
user.find({$and :[{"a":"text"},{$or :[{"b":"text"},{"c":"text"}]}]})
此mongo控制台查询给出正确的结果。 我如何在JAVA mongo驱动程序中应用它。
请事先帮助
您可以使用以下查询
DBCollection userCollection = db.getCollection("collection");
BasicDBObject orQuery = new BasicDBObject();
List<BasicDBObject> obj1 = new ArrayList<BasicDBObject>();
obj1.add(new BasicDBObject("a", "text"));
obj1.add(new BasicDBObject("b", "text"));
orQuery.put("$or", obj1);
BasicDBObject andQuery = new BasicDBObject();
List<BasicDBObject> obj = new ArrayList<BasicDBObject>();
obj.add(new BasicDBObject("c", "text"));
obj.add(orQuery);
andQuery.put("$and", obj);
System.out.println(andQuery.toString());
DBCursor cursor = userCollection.find(andQuery);
while (cursor.hasNext()) {
System.out.println(cursor.next());
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.