您的位置:首页 > 编程语言 > Java开发

mongo查询过滤条件java实例($and,$or,$eq,$ne)

2017-08-04 11:52 429 查看
查询账号下没有org_id ,且对应的company字段也为空,且手机号码是存在的用户

BasicDBObject submitQuery = new BasicDBObject();

submitQuery.put("$and", getQuery());
submitQuery.put("$and", getMobileQuery());

private static List<DBObject> getQuery(){
List<DBObject> list = Lists.newArrayList();

List<DBObject> orgList = Lists.newArrayList();
orgList.add(new BasicDBObject("org_id", new BasicDBObject("$eq", null)));
orgList.add(new BasicDBObject("org_id", new BasicDBObject("$eq", "")));
orgList.add(new BasicDBObject("org_id", new BasicDBObject("$eq", 0L)));

List<DBObject> companyList = Lists.newArrayList();
companyList.add(new BasicDBObject("company", new BasicDBObject("$eq", null)));
companyList.add(new BasicDBObject("company", new BasicDBObject("$eq", "")));

list.add(new BasicDBObject("$or", orgList));
list.add(new BasicDBObject("$or", companyList));
return list;
}

private static List<DBObject> getMobileQuery(){
List<DBObject> phoneList = Lists.newArrayList();
phoneList.add(new BasicDBObject("mobile", new BasicDBObject("$ne", null)));
phoneList.add(new BasicDBObject("mobile", new BasicDBObject("$ne", "")));
return phoneList;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: