数据库(五)----连接查询

一、概念

1.又称多表查询,当查询的字段来自多个表时,就会用到连接查询
在这里插入图片描述
“.”运算符取出各表中的数据
这样可以避免笛卡尔积的现象

二、sql92标准

1.等值连接
在这里插入图片描述
beauty.boyfriend_id与boys.d要等值才能连接成功
①.为表起别名,as或空格
注意:如果给表起了别名,那么查询的字段就不能使用原来的表名去限定
②.加条件
在这里插入图片描述
用and加条件
③.加分组
在这里插入图片描述
④.三表连接,分开写
在这里插入图片描述

2.非等值连接
在这里插入图片描述
3.自连接
在这里插入图片描述

三、sql99标准

1.语法
select 查询列表
from 表1 别名 【连接类型】
join 表2 别名 
on  连接条件
where 筛选条件
group by  分组
having  筛选条件
order by 排序列表 
2.内连接(等值连接)
①语法:
select 查询列表
from 表1 别名
inner join 表2 别名
on 连接条件
where 筛选条件
group by  分组
having  筛选条件
order by 排序列表

在这里插入图片描述

在这里插入图片描述
②三表连接:
在这里插入图片描述
③非等值连接
在这里插入图片描述
④自连接
在这里插入图片描述
3.外连接
①应用:一般用于一个表中有,一个表中没有的记录
②外连接的查询结果为主表中的所有记录,如果从表中有和它匹配的值,显示匹配的值,如果没有,显示NULL值
③左外连接:left join左边是主表
右外连接:left join右边是主表

左外连接:
在这里插入图片描述

在这里插入图片描述

右外连接:
在这里插入图片描述

在这里插入图片描述
④全连接=内连接+表1中有表2中没有+表2中有表1中没有
在这里插入图片描述

⑤交叉连接(等价于笛卡尔乘积)

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值