https://blog.csdn.net/lukabruce/article/details/80568796
LEFT JOIN、RIGHT JOIN、INNER JOIN以及CROSS JOIN的区别
LEFT JOIN 返回 左表的所有记录 以及 右表中与左表联结字段相等的记录;

left join
RIGHT JOIN 返回 右表的所有记录 以及 左表中与右表联结字段相等的记录;
right join
INNER JOIN 返回 两个表中联结字段相等的记录;
inner join
CROSS JOIN 把表A和表B的数据进行一个N*M的组合,即笛卡尔积,使用较少,后面不能跟ON关键字;
FULL JOIN MySql没有FULL JOIN,但是可以用union实现

full join
基本语法
FROM 表1 LEFT JOIN 表2 ON 表1.字段号=表2.字段号
FROM 表1 RIGHT JOIN 表2 ON 表1.字段号=表2.字段号
FROM 表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号
举例说明
有两张表:

student表

persion表
查询student_number=id_card_number的数据
左联查询:
select * from persion left join student on persion.id_card_number=student.student_number;

左联查询结果
可以看出,左表(persion)中的所有数据都返回了,右表(student)中总共有5条数据,但是只返回了3条数据,这3天数据跟左表中的id_card_number数值是相等的。
右联查询:
select * from persion right join student on persion.id_card_number=student.student_number;

右联查询结果
右表数据全部返回,左表返回了和右表相同的几条。
等值连接查询
select * from persion inner join student on persion.id_card_number=student.student_number;

等值连接查询结果
两表取交际
AS的用法
AS就是别名的意思,其他没有区别
select * from 表1 as 表1别名 inner join 表2 as 表2别名 on 表1别名.字段=表2别名.字段;
例如
select * from table1 as t1 inner join table2 as t2 on t1.name=t2.name;