1. 多表操作

  • 一对一 主键和外键 唯一性(不可重复)
  • 一对多 外键 可重复
  • 多对多 需要借助第三张表中间表 中间表至少包含两列作为外键 分别关联两张表的主键

2. 内连接查询

内连接查询的是两张表有交集的部分数据(有主外键关联的数据) 使用 inner join 关键字

  • 显式查询 select 列名 from 表名1 inner join 表名2 on 条件;
  • 隐式查询 select 列名 from 表名1,表名2 where 条件;

3. 外连接查询

3.1. 左外连接

查询左表的全部数据,和左右两张表有交集部分的数据。 使用 关键字 left outer join

select 列名 from 表名1 left outer join 表名2 on 条件;

3.2. 右外连接

查询右表的全部数据,和左右两张表有交集部分的数据。 使用 关键字 right outer join

select 列名 from 表名1 right outer join 表名2 on 条件;

4. 子查询

查询语句中嵌套了查询语句,我们称为子查询

  • 结果是单行单列 可以将结果加上运算符作为另外一条的查询条件
  • 结果是多行单列 使用运算符 in 或者 not in进行判断
  • 结果是多行多列 作为一张虚拟表参与查询

5. 自关联查询

在同一张表中数据有关联性,我们可以当成多个表来查询

配合内外连接使用