多表查询
通过不同表中具有相同意义的关键字段,将多个表进行横向连接,查询不同表中的字段信息。
注:连接两表时,用于连接的字段称为关键字段。
连接方式
- 内连接和外连接(左连接和右连接)
决定多表连接结果的三个属性
- 方向性:在外连接中,写在前面的表为左表,写在后面的表为右表
- 主附关系:主表要出所有的数据范围,附表与主表无匹配项时标记为null,内连接时无主附表之分
- 对应关系:关键字段中有重复值的表为多表,没有重复值的表为一表,它决定连接后的行数是两表对应项乘积的结果
对应关系
由于关键字段中有重复值的表为多表,没有重复值的表为一表,而在一张表中主键是没有重复值的,有重复值的是非主键字段,所以一对一,多对多和一对多的三种对应关系又可分别称为:
- 一对一:主键连主键
- 多对多:非主键连非主键
- 一对多:主键连非主键
一对一
一对一对应关系在实际应用中是最不可能出现的,因为主键是记录单位,表中所有的字段都是围绕主键进行的,所以当两表的主键相同时是可以放在一个表中的。如下面的两张表,当用