常用的多表连接查询

内连接

内连接(inner join):返回的是两个表中匹配连接条件的行的集合
1.等值内连接
在这里插入图片描述

2.非等值内连接
在这里插入图片描述
3.自然连接(natural join)
在这里插入图片描述
自然连接 :自动找相同字段相等的值作为连接条件,若没有相同字段,则相当于做笛卡尔积运算,即dept表中的每一行都有test表中的每一行去匹配,返回 行数*行数 条记录

外连接

1.左外连接(left join)
在这里插入图片描述
左外连接:左边(dept表)不符合连接条件的数据也会查询出来
2.右外连接(right join)
在这里插入图片描述
右外连接:右边(test表)不符合连接条件的数据也会查询出来
3.全连接(full join)
在这里插入图片描述
左边(dept表)和右边(test表)不符合连接条件的数据也会查询出来

交叉连接(cross join)

在这里插入图片描述
交叉连接就是笛卡尔积运算

自连接

即自身连接,也就是说把一张表看做两张表,分别取不同的别名,做连接查询
实例:假设在teacher表中(如下图),有老师的姓名tname列,导师编号mgrno列,要求查询每个老师的导师是谁:
在这里插入图片描述
可以把teacher表看做两张表,分别取不同的别名,sql语句如下:
select t1.tname,t2.tname 导师
from teacher t1 inner join teacher t2 on t1.mgrno=t2.tno
结果如下:
在这里插入图片描述
这就是自身连接。

如果对你有所帮助,请点赞评论一下,谢谢

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值