介绍
MySQL 多表查询 连接查询 内连接
外连接分为两种,左外和右外连接,
左外:相当于查询表1(左表)的所有数据 包含 表1和表2交集部分的数据,完全包含左表的数据
右外:相当于查询表2(右表)的所有数据 包含 表1和表2交集部分的数据,完全包含右表的数据
连接模式
左外连接
SELECT 字段列表 FROM 表1 LEFT [OUTER] JOIN 表2 ON 条件
右外连接
SELECT 字段列表 FROM 表1 RIGHT [OUTER] JOIN 表2 ON 条件
OUTER 可省略
案例
有一个学生表和班级表,学生表ID13号为null,如果使用内连接的方式该条数据将不会显示,这时候就可以使用左连接,相当于让学生表的权重更高
MySQL 多表查询 连接查询 内连接
内连接查询
SELECT * FROM students s INNER JOIN classes c on s.classes=c.id
左外连接
SELECT * FROM students s LEFT OUTER JOIN classes c ON s.classes=c.id
外右连接
与左连接一样,权重在右边,完全包含右表的数据
总结
左右外连接其实但是一个样子,只是位置不同而已,一般情况下使用左连接就可以了,因为表的位置是可以改动的,当然也可以通过right进行变动