mybatisplus中LambdaQueryWrapper做关联查询
时间: 2024-03-13 07:41:39 浏览: 126
MyBatis-Plus是一个优秀的持久层框架,它在MyBatis的基础上进行了扩展和增强。LambdaQueryWrapper是MyBatis-Plus中的一个查询条件构造器,它提供了一种更加简洁、直观的方式来构建查询条件。
在MyBatis-Plus中,LambdaQueryWrapper可以用于进行关联查询。关联查询是指通过多个表之间的关联条件,将多个表的数据进行联合查询。LambdaQueryWrapper可以通过链式调用的方式,构建多个表之间的关联条件。
下面是使用LambdaQueryWrapper进行关联查询的示例代码:
```java
// 导入相关类
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
// 创建LambdaQueryWrapper对象
LambdaQueryWrapper<User> queryWrapper = new LambdaQueryWrapper<>();
// 添加关联条件
queryWrapper.eq(User::getId, 1)
.leftJoin(UserRole.class, UserRole::getUserId, User::getId)
.eq(UserRole::getRoleId, 2);
// 执行查询
List<User> userList = userMapper.selectList(queryWrapper);
```
上述代码中,我们创建了一个LambdaQueryWrapper对象,并通过eq方法添加了一个主表User的条件,然后通过leftJoin方法添加了一个关联表UserRole的条件。最后,调用selectList方法执行查询,并将结果保存在userList中。
阅读全文