mybatisplus 条件查询
时间: 2023-06-29 20:17:06 浏览: 102
MybatisPlus 是一个基于 Mybatis 的增强工具,它封装了很多 Mybatis 的细节,并且提供了很多实用的功能,其中就包含了条件查询。下面是一个简单的 MybatisPlus 条件查询的示例:
```java
// 创建 QueryWrapper 对象
QueryWrapper<User> wrapper = new QueryWrapper<>();
// 设置查询条件
wrapper.eq("user_name", "张三")
.ge("age", 18)
.orderByDesc("id");
// 执行查询操作
List<User> userList = userMapper.selectList(wrapper);
```
这段代码的意思是:查询 `user_name` 等于 "张三" 且 `age` 大于等于 18 的用户,并且按照 `id` 降序排序。在 MybatisPlus 中,`QueryWrapper` 对象用于封装查询条件,`eq` 方法表示等于,`ge` 方法表示大于等于,`orderByDesc` 方法表示按照指定字段降序排序。最后执行 `selectList` 方法执行查询操作,返回符合条件的用户列表。
除了上面的示例,MybatisPlus 还提供了更多的查询方法,包括模糊查询、分页查询等等,具体可以参考官方文档。
相关问题
mybatisplus条件查询
好的,关于mybatisplus的条件查询,您可以通过Mybatis-Plus提供的Lambda QueryWrapper来实现。Lambda QueryWrapper是对原始QueryWrapper的增强,使用lambda表达式的方式封装查询条件,使代码更加简洁易懂。以下是一个示例:
```
LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(User::getName, "张三").or().eq(User::getName, "李四");
List<User> userList = userMapper.selectList(wrapper);
```
以上代码实现了查询姓名为张三或者李四的用户信息。其中,LambdaQueryWrapper的eq方法表示等于,User::getName表示指定查询的字段名,"张三"表示查询的条件值。or()表示或者关系。
还有其他丰富的Lambda表达式可供使用,如in()、between()、like()等等。详情可参考Mybatis-Plus官方文档。
MybatisPlus条件查询
MybatisPlus是Mybatis的增强版,提供了更加便捷的条件查询方式。
1. 简单的条件查询
```java
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("name", "张三");
List<User> userList = userMapper.selectList(queryWrapper);
```
2. 多条件查询
```java
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("name", "张三")
.eq("age", 18);
List<User> userList = userMapper.selectList(queryWrapper);
```
3. 模糊查询
```java
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.like("name", "张");
List<User> userList = userMapper.selectList(queryWrapper);
```
4. 区间查询
```java
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.between("age", 18, 30);
List<User> userList = userMapper.selectList(queryWrapper);
```
5. 集合查询
```java
List<Integer> ageList = new ArrayList<>();
ageList.add(18);
ageList.add(20);
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.in("age", ageList);
List<User> userList = userMapper.selectList(queryWrapper);
```
6. 排序查询
```java
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.orderByDesc("age");
List<User> userList = userMapper.selectList(queryWrapper);
```
7. 分页查询
```java
Page<User> page = new Page<>(1, 10);
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.between("age", 18, 30);
IPage<User> userIPage = userMapper.selectPage(page, queryWrapper);
List<User> userList = userIPage.getRecords();
```
以上就是MybatisPlus的常见条件查询方式。
阅读全文