使用$或$in在Java中创建mongodb查询
发布时间:2020-05-24 01:10:13 所属栏目:Java 来源:互联网
导读:我正在尝试使用 mongodb api编写一个 java代码来创建这个mongodb查询: { $or: [{prd : {$in : [1234, 0987]}} , {rsin : 3228742}]} 这是我到目前为止使用的代码: QueryBuilder builder = new QueryBuilder();if (builder == null) {
|
我正在尝试使用 mongodb api编写一个 java代码来创建这个mongodb查询: { "$or": [{"prd" : {"$in" : ["1234","0987"]}},{"rsin" : "3228742"}]}
这是我到目前为止使用的代码: QueryBuilder builder = new QueryBuilder();
if (builder == null) {
builder = QueryBuilder.start();
}
if (mongoKey.equals("prd")){
ArrayList<String> vals = new ArrayList<String>();
for (int i=0; i < prdList; i++){
vals.add(prdList.get(i));
}
DBObject obj = new BasicDBObject (mongoKey,new BasicDBObject("$in",vals));
builder.or(obj);
}else {
builder.and(mongoKey).is(mongoValue);
}
这当前打印出错误的语法: { "$or": [{"prd" : {"$in" : ["1234","0987"]}}],"rsin" : "3228742"}
有帮助吗? 解决方法问题是在else块上,你需要使用或方法代替和....
}else {
builder.or(new BasicDBObject(mongoKey,mongoValue));
}
这将生成您想要的查询. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
