表的连接分成好几种类型。
- 内连接(inner join)
- 外连接(outer join)
- 左连接(left join)
- 右连接(right join)
- 全连接(full join)
很容易看出,一共有四种处理方法。
- 只返回两张表匹配的记录,这叫内连接(inner join)。
- 返回匹配的记录,以及表 A 多余的记录,这叫左连接(left join)。
- 返回匹配的记录,以及表 B 多余的记录,这叫右连接(right join)。
- 返回匹配的记录,以及表 A 和表 B 各自的多余记录,这叫全连接(full join)。
这四种连接的 SQL 语句如下。
SELECT * FROM A INNER JOIN B ON A.book_id=B.book_id; SELECT * FROM A LEFT JOIN B ON A.book_id=B.book_id; SELECT * FROM A RIGHT JOIN B ON A.book_id=B.book_id; SELECT * FROM A FULL JOIN B ON A.book_id=B.book_id;