MySQL-多表查询

目录

一、一对一关系

①把信息合成一张表 👍最优​

②在其中一张表添加外键 

​③添加一张新表存关系

二、一对多关系

①在学生表(多的这一方)加外键👍

②添加一张新表存关系

​三、多对多:

只能添加一张新表存关系!!但是也可以添加新的字段,比如成绩;👍

四、实战

①先创建两张表:

②将学生表的cid字段设置为外键

​③填写表

④查询

1、多表查询

2、连表查询

内连接

​左外连接

右外连接


在实际应用中,数据库通常由多个表组成,单表查询往往无法满足需求。因此,我们需要使用 多表查询 来整合数据,提高查询效率。多表关系是必不可少的部分,常见的关系包括:一对一、一对多和多对多。本文将介绍这些关系的处理方式,并结合sql查询进行实战演练。

一、一对一关系

场景:夫妻关系

如何在页面呈现出这种夫妻关系? 

①把信息合成一张表 👍最优

②在其中一张表添加外键 

 ③添加一张新表存关系

二、一对多关系

场景:一个班级有多个学生

 合成一张新表对于一的那一方会出现数据冗余,不支持。

①在学生表(多的这一方)加外键👍

②添加一张新表存关系

 三、多对多:

 场景:学生选课

合成一张新表对于学生和课程双方都会出现数据冗余,不支持。

添加外键也会冗余

只能添加一张新表存关系!!但是也可以添加新的字段,比如成绩;👍

 总结:

一对一:把信息合成一张表👍

一对多:在学生表(多的这一方)加外键👍

多对多:添加一张新表存关系👍

四、实战

①先创建两张表:

 

②将学生表的cid字段设置为外键

 

 ③填写表

注意写外键的时候不能随便写

④查询

1、多表查询

2、连表查询
内连接
 左外连接

右外连接
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值