mybatis-plus的or条件查询
时间: 2023-04-23 14:01:46 浏览: 1324
Mybatis-plus的or条件查询可以通过使用Wrapper的or方法来实现。具体步骤如下:
1. 创建Wrapper对象,例如:
Wrapper<User> wrapper = new QueryWrapper<>();
2. 调用Wrapper的or方法,例如:
wrapper.or(i -> i.eq("name", "张三").eq("age", 20));
3. 执行查询操作,例如:
List<User> userList = userMapper.selectList(wrapper);
以上代码表示查询name为张三或者age为20的用户信息。
注意:or方法的参数是一个Lambda表达式,用于指定or条件的具体内容。在Lambda表达式中,可以使用Wrapper的各种查询方法来构建查询条件。
相关问题
mybatis-plus 多条件查询
Mybatis-plus 支持多条件查询,可以通过构建 QueryWrapper 对象来实现。QueryWrapper 对象可以通过链式调用的方式添加多个查询条件,例如:
```
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.eq("name", "张三")
.ge("age", 18)
.orderByDesc("create_time");
List<User> userList = userMapper.selectList(wrapper);
```
上面的代码中,我们创建了一个 QueryWrapper 对象,并通过 eq() 方法添加了一个等于条件,ge() 方法添加了一个大于等于条件,orderByDesc() 方法添加了一个降序排序条件。最后,我们调用了 selectList() 方法执行查询,并将结果保存在 userList 变量中。
除了上面的方法,QueryWrapper 还支持很多其他的查询条件,例如:
- like():模糊查询
- in():in 查询
- between():范围查询
- and():and 条件
- or():or 条件
通过这些方法的组合,我们可以构建出非常复杂的查询条件,满足各种业务需求。
mybatis-plus or查询怎么用
在 MyBatis-Plus 中,使用 `LambdaQueryWrapper` 来构建查询条件,实现 OR 查询可以使用 `or` 方法。
下面是一个例子,假设有一个实体类 `User`,有两个属性 `name` 和 `age`,我们想查询名字为 "Tom" 或者年龄小于 18 岁的用户,可以这样写:
```java
LambdaQueryWrapper<User> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(User::getName, "Tom").or().lt(User::getAge, 18);
List<User> userList = userMapper.selectList(queryWrapper);
```
在上面的代码中,`eq` 和 `lt` 方法分别表示等于和小于,`User::getName` 和 `User::getAge` 分别表示获取 `name` 和 `age` 属性的方法引用。而 `or` 方法则表示使用 OR 连接两个查询条件。最后使用 `selectList` 方法进行查询,返回符合条件的用户列表。
当然,你也可以使用 `or` 方法连接多个查询条件,比如:
```java
LambdaQueryWrapper<User> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(User::getName, "Tom").or().lt(User::getAge, 18).or().eq(User::getSex, "female");
List<User> userList = userMapper.selectList(queryWrapper);
```
上面的代码表示查询名字为 "Tom" 或者年龄小于 18 岁或者性别为女的用户。
阅读全文