1.基本概念
left join 是左连接,使用left join 连接两张表以后,会返回左表中的所有字段以及右表中所匹配的信息
right join 是右连接,使用right join 连接两张表以后,会返回右表中的所有字段以及左表中所匹配的信息
inner join 相当于 join,都是内连接,会返回左右表中所匹配的信息
2.实验
我创建了两张表 分别是 test1 和 test2
test1中字段如下
test2中字段如下
test1中数据如下
test2中数据如下
2.1 left join
如果我们使用左外连接
SELECT * FROM test1 LEFT JOIN test2 on test1.id = test2.id;
那么返回结果如下
可以看到,返回了左表中的所有信息以及右表中所匹配的信息,如果右表中没有与之匹配的信息就会以null进行代替
2.2 right join
SELECT * FROM test1 RIGHT JOIN test2 on test1.id = test2.id;
可以看到,返回了右表中的所有信息以及左表中所匹配的信息,如果左表中没有与之匹配的信息就会以null进行代替
2.3 inner join
如果我们使用内连接
SELECT * FROM test1 INNER JOIN test2 on test1.id = test2.id;
SELECT * FROM test1 JOIN test2 on test1.id = test2.id;
返回结果如下
可以看到,根据连接条件,两个表的行数据进行匹配,然后返回两个表中所有的字段