mysql中外链接是什么意思?

  • 来源:网络
  • 更新日期:2020-09-27

摘要:mysql中外连接是指使用比较运算符对两个表中的数据进行比较,连接结果不仅包含符合连接条件的行,同时也包含自身不符合条件的行,不符合条件行的字段显示为null;外连接分为左外连

mysql中外连接是指使用比较运算符对两个表中的数据进行比较,连接结果不仅包含符合连接条件的行,同时也包含自身不符合条件的行,不符合条件行的字段显示为null;外连接分为左外连接、右外连接。

更多相关免费学习推荐:mysql教程(视频)

内连接(Inner Join)又称简单连接或自然连接,是一种常见的连接查询。内连接使用比较运算符对两个表中的数据进行比较,并列出与连接条件匹配的数据行,组合成新的纪录。也就是说在内连接查询中,只有满足条件的记录才能出现在查询结果中。

在内连接查询中,返回的结果只包含符合查询条件和连接条件的数据,然而有时还需要包含没有关联的数据,即返回结果不仅包含符合条件的数据,而且还包含左表(左连接,左外连接)或右表(右连接或右外连接)或两个表(全外连接)中的所有数据,此时就要使用外连接查询。

mysql中外连接分为左外连接、右外连接;不支持全外连接。

外连接外连接语法格式如下:

select 所查字段 from 表1 left | right [outer] join 表2 on 表1.关系字段=表2.关系字段 where 条件包括左外连接、右外连接和全外连接。

注意使用left join, right join关键字左边的表称为左表,关键字右边的表称作右表。

1.左外连接

以左侧的表为基表,显示基表的所有行、列,外表如果条件不匹配则外表中所有字段显示为null

select * from TestA a left join TestB b on a.id=b.id;

2.右外连接

以右侧的表为基表,显示基表的所有行、列,外表如果条件不匹配则外表中所有字段显示为null

select * from TestA a right join TestB b on a.id=b.id;