解释 MySQL 外连接、内连接与自连接的区别 ?

先说什么是交叉连接: 交叉连接又叫笛卡尔积,它是指不使用任何条件,直接将一

个表的所有记录和另一个表中的所有记录一一匹配。

内连接 则是只有条件的交叉连接,根据某个条件筛选出符合条件的记录,不符合

条件的记录不会出现在结果集中,即内连接只连接匹配的行。

外连接 其结果集中不仅包含符合连接条件的行,而且还会包括左表、右表或两个

表中的所有数据行,这三种情况依次称之为左外连接,右外连接,和全外连接。

左外连接,也称左连接,左表为主表,左表中的所有记录都会出现在结果集中,

对于那些在右表中并没有匹配的记录,仍然要显示,右边对应的那些字段值以

NULL 来填充。右外连接,也称右连接,右表为主表,右表中的所有记录都会出现

在结果集中。左连接和右连接可以互换,MySQL 目前还不支持全外连接。

原文地址:https://www.cnblogs.com/programb/p/13020825.html