1.连接查询与引用关系有关
a.什么是引用关系?
一个表 引用了 另外一个表的数据,这就是引用关系
b.上述文字中出现了两个[表]
第一个表:外键表
第二个表:主键表
外键表引用主键表的数据
c.为什么要设计引用关系的表结构
减少数据冗余
d.主外键约束是一定要的嘛?
是一定要的,但是分时候,开发时不要,方便开发,交付时要
保证数据引用完整性
2.本质:它是一种查询条件 , 它可以把多个表整合在一起
3. 解决数据可视化低下的问题
4. ****条件;各表之间存在逻辑关系,并且各表之间还有明确的主外键关系
假设查找所有
语法:
内连接:select * from 表名1 inner join 表名2
on table1.关系列 = table2.关系列
(似两个相交部分的数据显示)
外连接:select * from 表名1 left/right join 表名2
on table1.关系列 = table2.关系列
(优先只显示左边,或右边的表)
全连接:select * from 表名1 full join 表名2
on table1.关系列 = table2.关系列
(两表所有数据全显示,包括 null)
交叉连接:select * from 表名1 cross join 表名2
select * from 表名1 , 表名2
(两表乘积)
一个完整的查询:
select * from table1 t1 连接关键字 join table t2
on t1.关系列 = t2.关系列
where 条件
group by 列名
having 条件
order by 列名 asc/desc
*. 总结:连接查询是基于表关系编写,首先要找到表与表的逻辑列即关系列
,再套用语法 .有3个表或以上时,把两个表看成一个表,再与另一个表连接.