Day32

Day32
一、多表连接
1、两个表之间的关系
(1)一对一
(2)一对多
(3)多对多
2、外键
定义:是引用另一个表中的一列或多列,被引用的列应该具有主键约束或唯一性约束。
作用:建立和加强两个表数据之间的链接。
3、连接的类型
(1)交叉连接:笛卡尔积
(2)内连接(等值连接):用于一对多的情况,
标准格式:select 查询字段 from 表1,表二 where 表一.关系字段 = 表二.关系字段
例如:select * from pet,emp where pet.ren=emp.empno
(3)左连接:
关键字:left join on
标准格式: select 查询字段 from 表一 left join 表二 ON 表一.关系字段 = 表二.关系字段
展示出表一中的所有内容,与之相对应的表二有匹配的就显示,没有匹配的就null。
例如: 查看所有员工及其宠物信息
select * from emp e left join pet p ON e.empno=p.ren
(4)右连接
关键字:right join on
标准格式: select 查询字段 from 表一 right join 表二 ON 表一.关系字段 = 表二.关系字段
展示出表二中的所有内容,与之相对应的表一有匹配的就显示,没有匹配的就null。
例如: 查看所有宠物及其主人信息
select * from emp e right join pet p ON e.empno=p.ren
(5)全连接
关键字:union
标准格式:select 查询字段 from 表一 left join 表二 ON 表一.关系字段 = 表二.关系字段union select 查询字段 from 表二 right join 表一 ON 表一.关系字段 = 表二.关系字段
将左连接和右连接合在一起,从而达到全连接的目的
例如:select * from emp e left join pet p ON e.empno=p.ren UNION select * from emp e right join pet p ON e.empno=p.ren

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值