连接的语法结构
表1{[inner|cross] join|{left|right}[outer] join}
表2 on 连接的条件
首先我们先创建两个表格A和B,并且插入数据
生成的表格如下:
内连接 inner join
连接条件
:可以使用on关键字来设定连接条件,也可以使用where来代替
通常使用on关键字来设定连接条件,使用where关键字进行结果集记录的过滤
`内连接仅显示符合两张表连接条件的记录
这里的内连接相当于以下的sql:
外连接
外连接分为左外连接和右外连接
- 左外连接就是显示左表的全部记录以及右表符合连接条件的记录
- 右外连接就是显示右表的全部记录以及左表符合连接条件的记录
这就是左外连接:显示左边所有的数据,只显示和右边相关联的数据
这就是右外连接:显示右边的所有数据,只显示和左边相关联的数据
可以将二者对比结合去看
- 全外连接:
全外连接返回参与连接的两个数据集合中的全部数据,无论它们是否具有与之相匹配的行。
在功能上,它等价于对这两个数据集合分别进行左外连接和右外连接,然后再使用消去重复行的并操作将上述两个结果集合并为一个结果集
(full join 或 full outer join )
多表连接
select 表字段(这里可以包含表1,表2,表3的一些表子段)... from 表格1 AS g(表1的别名)
inner join 表格2 AS c(表2的别名)on g.表字段=c.表字段
inner join 表3 AS b(表3的别名)on g.表字段=b.表字段;