LambdaQueryWrapper and or
时间: 2023-10-12 16:05:48 浏览: 113
MyBatisPlus中使用or()和and()遇到的问题及细节处理
LambdaQueryWrapper 是 MyBatis-Plus 框架提供的一个查询条件封装类,用于构建复杂的查询条件。它可以通过链式调用的方式,方便地组合多个查询条件。
在 LambdaQueryWrapper 中,可以使用 and 和 or 方法来连接多个查询条件。这两个方法的作用如下:
1. and:将多个查询条件用 AND 连接起来,表示所有条件都要满足才能返回结果。
例如:wrapper.and(w -> w.eq("name", "张三").ne("age", 18));
2. or:将多个查询条件用 OR 连接起来,表示满足任意一个条件即可返回结果。
例如:wrapper.or(w -> w.eq("name", "李四").eq("age", 20));
使用示例:
```java
LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(User::getName, "张三").ne(User::getAge, 18)
.or(w -> w.eq(User::getName, "李四").eq(User::getAge, 20));
List<User> userList = userMapper.selectList(wrapper);
```
以上代码中,创建了一个 LambdaQueryWrapper 对象 wrapper,并使用 eq、ne、or 等方法构建了查询条件。最后通过 selectList 方法执行查询,并返回满足条件的 User 列表。
希望能帮到你!如果还有其他问题,请继续提问。
阅读全文