mybatisPlus的多表联查
时间: 2023-07-21 17:08:12 浏览: 97
MybatisPlus多数据源原理及使用注意点.pdf
Mybatis-Plus 的多表联查有多种实现方式,以下是其中两种常用的方式:
1. 使用 Mybatis-Plus 的 Wrapper 查询构建器
使用 Mybatis-Plus 的 Wrapper 查询构建器可以方便地构建多表联查的 SQL。例如,我们要查询 user 表和 order 表的信息,其中 user 表和 order 表通过 user_id 字段关联,可以使用如下代码实现:
```java
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.eq("user.id", "order.user_id");
wrapper.eq("user.name", "张三");
List<Map<String, Object>> result = userMapper.selectMaps(wrapper);
```
2. 自定义 SQL 实现多表联查
除了使用 Mybatis-Plus 的 Wrapper 查询构建器外,我们也可以自定义 SQL 实现多表联查。例如,我们要查询 user 表和 order 表的信息,其中 user 表和 order 表通过 user_id 字段关联,可以使用如下代码实现:
```java
@Select("SELECT user.*, order.* FROM user, order WHERE user.id = order.user_id AND user.name = #{name}")
List<Map<String, Object>> selectUserOrderInfo(@Param("name") String name);
```
以上两种方式都可以实现多表联查的功能,具体选择哪种方式取决于实际情况。
阅读全文