mongo- spring boot 操作- and or查询
场景
select * from user where address="上海" age >10 and (name="小明" or nickName like '小明')
以前查询在 mongo 实现
{
"address": "上海",
"$and": [{
"$or": [{
"name": "小明"
}, {
"nickName": "小明"
}]
}],
"name": 2
}
java 实现
@Override
public List<User> userList(ArticleAppQuery articleAppQuery) {
Criteria criteria = new Criteria();
criteria.and("age").gt(10);
Criteria tmp= new Criteria();
Criteria criteria1 = Criteria.where("name").is("小明");
Criteria criteria2 = Criteria.where("nickName").is("小明");
criteria.andOperator(tmp.orOperator(criteria1,criteria2));
criteria.and("address").is("上海");
Query query = new Query(criteria);
query.with(Sort.by(Sort.Order.desc("createTo,e")));
return mongoTemplate.find(query,User.class);
}
文章介绍了如何在MongoDB中使用SpringBoot进行复杂的and/or查询操作,包括Java代码示例,展示了如何构建查询条件来筛选address为上海,年龄大于10,以及name或nickName为小明的用户记录。

1万+

被折叠的 条评论
为什么被折叠?



