MySQL内外连接

文章目录

  • 一、内连接
  • 二、外连接
    • 1.左外连接
    • 2.右外连接

表的连接分为内连接和外连接。

一、内连接

select ... from t1 inner join t2 on 连接条件 and 其他条件;

注:利用 where 子句对两张表形成的笛卡儿积进行筛选,这种方式也是内连接。

显示SMITH的名字和部门名称。

法一:使用 where 子句的写法。MySQL内外连接_第1张图片法二:用标准的内连接写法。在这里插入图片描述

二、外连接

外连接分为左外连接和右外连接。

1.左外连接

select ... from t1 left join t2 on 连接条件 and 其他条件;

以左表为主,右表根据连接条件,符合的就显示,不符合的就为空。

即左侧的表完全显示,右侧的表能匹配的就显示,不能匹配的就为空。

MySQL内外连接_第2张图片

查询所有学生的成绩,如果这个学生没有成绩,也要将学生的个人信息显示出来。
MySQL内外连接_第3张图片

2.右外连接

select ... from t1 right join t2 on 连接条件 and 其他条件;

以右表为主,左表根据连接条件,符合的就显示,不符合的就为空。

即右侧的表完全显示,左侧的表能匹配的就显示,不能匹配的就为空。

对 stux 表和 exam 表联合查询,把所有的成绩都显示出来,即使这个成绩没有学生与它对应,也要显示出来。
MySQL内外连接_第4张图片

列出部门名称和这些部门的员工信息,同时列出没有员工的部门。

法一:使用左外连接。MySQL内外连接_第5张图片法二:使用右外连接。MySQL内外连接_第6张图片

你可能感兴趣的:(MySQL,mysql,数据库,sql)