全外连接和交叉连接

接下来分享的有全外连接和交叉连接,在学习全外连接的时候我们会接触到之前学过的左连接和右连接,那么接下来我们先从全外连接开始然后再到交叉连接顺便再复习一下左连接和右连接。
首先在学习全外连接之前我们先了解一下什么是全外连接,全外连接就是当左表和右表中存在匹配项时,将返回所有的值。
在这里插入图片描述

依旧是熟悉的整张图,可能会有些看不清但是没关系我们将它放大。
在这里插入图片描述

这样就好看多了,既然表已经新建成功了那么接下来我们就开始实现他的功能了。就如同我们上面说的那样全外连接是当左表和右表存在匹配项的时候返回所有的行。
首先我们先将两张表全部查询出来,直接使用select * from som和select * from mem语句就好from后面接的是表的名称这点要注意了是名称不是别的。查出来是这样的
在这里插入图片描述

查询出来后我们再看其他的,将两张表连接起来使用FULL OUTER JOIN查询两张表中的数据。
在这里插入图片描述

以上是使用后查询出来的结果,有两个数据为空的数据行。
接下来我们来了解交叉连接,通过交叉连接我们可以连接两个或多个不相关的表。是不是感觉很有用啊!使用cross join将每个表的每一行连接起来也就是返回两个表中行的笛卡尔积。但是和inner join 和
Left join 不同,交叉连接不会在连接的表之间建立关系。
在这里插入图片描述

从这里可以看出cross join 从每一表中获取一行,然后为第二个表中的每一行创建一个新行,然后他就会对接下来的每一行执行相同的操作。这也就会为啥呢我们看到第二张表中的数据重复了两遍。
换一个也是一样的情况。
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值