Mybatis-plus怎么查询关联表的某个字段
时间: 2023-06-02 13:08:27 浏览: 392
您可以使用 Mybatis-plus 的 Wrapper 来实现关联表查询,具体步骤如下:
1. 创建关联表对应的实体类。
2. 在 Mapper 接口中编写 SQL 语句,使用 LEFT JOIN 连接关联表,并使用 SELECT 子句查询需要的字段。
3. 在 Service 层中使用 Mybatis-plus 的 Wrapper 构造器创建查询条件。
4. 调用 Mapper 层的 selectList 方法,传入 SQL 语句和查询条件,即可查询关联表的某个字段。
例如,查询订单表和商品表的关联字段:
1. 创建订单实体类和商品实体类。
```
public class Order {
private Long id;
private String orderNo;
private Long productId;
// 省略 getter/setter 方法
}
public class Product {
private Long id;
private String name;
private BigDecimal price;
// 省略 getter/setter 方法
}
```
2. 在 Mapper 接口中编写 SQL 语句。
```
@Select("SELECT o.id, o.order_no, p.name AS product_name FROM order o LEFT JOIN product p ON o.product_id = p.id")
List<Order> selectOrderWithProduct();
```
3. 在 Service 层中使用 Mybatis-plus 的 Wrapper 构造器创建查询条件。
```
QueryWrapper<Order> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("order_no", orderNo);
```
4. 调用 Mapper 层的 selectList 方法,传入 SQL 语句和查询条件,即可查询关联表的某个字段。
```
List<Order> orderList = orderMapper.selectOrderWithProduct(queryWrapper);
```
阅读全文