mybatis - 多表查询
1 mybatis多表查询 - 多对一查询
多本书Book对象在一个出版社Publisher中
1.1 两张表
1.1.1 表book_tab
1.1.2 表publisher_tab
1.2 查询用的几种sql语句
-- 内连接 如果book_tab表中有字段没有写出版社id,那么就查不到
select b.* , p.* from book_tab b , publisher_tab p where b.book_publisher = p.publisher_id;
-- 左外连接 左表全部显示
select b.* , p.* from book_tab b left join publisher_tab p on b.book_publisher = p.publisher_id;
-- 右外连接
SELECT b.* , p.* FROM book_tab b right join publisher_tab p ON b.book_publisher = p.publisher_id;
-- 子查询 根据子表的结果来查询,不会显示子表的内容
select b.* from book_tab b where b.book_publisher in
(
select p.publisher_id from publisher_tab p
)
1.3 类的设计
1.3.1 出版社的实体类
/**
* 出版社,被关联的表。
* @author lenovo
*
*/
@Alias("Publisher")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Publisher {
private