数据库表的四种连接方式-----左外连接、右外连接、内连接、全连接
1.创建表如下:
2.添加约束:
3.添加数据:
4,查看数据:
5.内连接:
内连接也叫连接,是最早的一种连接。还可以被称为普通连接或者自然连接,内连接是从结果表中删除与其他被连接表中没有匹配行的所有行,所以内连接可能会丢失信息。
内连接的语法如下:
select fieldlist from table1 [inner] join table2 on table1.column=table2.column
6.外连接:外连接分为三种---->左外连接,右外连接,全外连接
左外连接:
left join是以左表的记录为基础的,示例中parent可以看成左表,son可以看成右表,它的结果集是parent表中的数据,再加上parent表和son表匹配的数据。换句话说,左表(parent)的记录将会全部表示出来,而右表(son)只会显示符合搜索条件的记录。son表记录不足的地方均为NULL。
右外连接:
和left join的结果刚好相反,是以右表(son)为基础的, 显示son表的所以记录,在加上parent和son匹配的结果。parent表不足的地方用NULL填充.
全连接:
左表和右表都不做限制,所有的记录都显示,两表不足的地方用null 填充
select * from parent a full join son b on a.pid = b.pid;//mysql中不支持全连接
但可以通过如下方式解决: