内、外、左、右连接使用

开发工具与关键技术:Visual Studio 和  ASP.NET.MVC,
作者:陈鸿鹏
撰写时间:2019年  4月20日

在我们的日中每当要查询的时候就会考虑到要用是么的方法去连接是用内连接呢(innerjoin)还是左连接呢(left join),既然左连接(left join)了接下来肯定是要有右连接的了那么右连接为(right join),还有的是既然有了内连接了(innerjoin)肯定就是会有外连接的了(outer join)
1.那么我们首先来讲内连接(innerjoin),何为内连接(innerjoin)呢,就如同高中数学中所学的集合数组那样分为:交集、并集。内连接(innerjoin)就如同A里面有六个数字分别为:【1、2、3、4、5、6 】, B里面有六个数字分别为:【 2、3、 5、6、7、8 】,分别求出A、和B、两个间的交集 。
交集的意思就是说把A、和B、里面相同的数据提取出来放到一块去,答案为:【2、3、5、6】这个就是交集。
同理内连接(innerjoin)也就是像数学中的交集,我们查询的数据得分是通过表与表之间的主键和外键拉连接。如图下为列子A表和B表为要查询的表,A、主键为某个表的主键, B、外键为另外一个表和A表主键有关联的表进行连接,要从A表和B表中数据连接把相等的数据找出来连接A表里面的【1、2、3、4、5、6】和B表里面的【 2、3、 5、6、7、8 】用(innerjoin)连接来获取同等的值或者说是相等的值【2、3、5、6】进行连接。
在这里插入图片描述
2. 左连接(left join)也是一样,如同高中数学中所学的集合数组那样。左连接(left join)就如同A里面有六个数字分别为:【1、2、3、4、5、6 】, B里面有六个数字分别为:【 2、3、 5、6、7、8 】,分别求出A、和B、两个间的交集 。并集的意思就是说把A、和B、里面相同的数据只显示一遍提取出来放到一块去合并,答案为:【2、3、5、6】这个就是并集。
同理左连接(left join)也是像高中数学中的交集,我们查询的数据得分是通过表与表之间的主键和外键拉连接。如图下为列子A表和B表为要查询的表,A、主键为某个表的主键, B、外键为另外一个表和A表主键有关联的表进行连接,要从A表和B表中数据连接把相等的数据找出来连接A表里面的【1、2、3、4、5、6】和B表里面的【 2、3、 5、6、7、8 】用(left join)连接来获取同等的值或者说是相等的值只显示一遍提取出来放到一块去合并【1、2、3、4、5、6、7、8】进行连接。与此不同的是在查询中就是以左边A为主右边B为辅,A有就显示B 没有就用null补上,侧反之。
在这里插入图片描述
3. 右连接(right join)也是一样,如同数学集合数组。右连接(right join)就如同A里面有四个数字分别为:【2、3、5、6 】, B里面有六个数字分别为:【 2、3、 5、6、7、8 】,分别求出A、和B、两个间的并集 。并集的意思就是说把A、和B、里面相同的数据只显示一遍提取出来放到一块去合并,答案为:【2、3、5、6、7、8】这个就是并集。
同理右连接(right join)也是像高中数学中的交集,我们查询的数据得分是通过表与表之间的主键和外键拉连接。如图下为列子A表和B表为要查询的表,A、主键为某个表的主键, B、外键为另外一个表和A表主键有关联的表进行连接,要从A表和B表中数据连接把相等的数据找出来连接A表里面的【2、3、5、6】和B表里面的【 2、3、 5、6、7、8 】用(right join)连接来获取同等的值或者说是相等的值只显示一遍提取出来放到一块去合并【2、3、5、6、7、8】进行连接。与此不同的是在查询中就是以右边B为主右边A为辅,A有就显示B 没有就用null补上,侧反之。
在这里插入图片描述
4. 外连接的了(outer join)也是像高中数学中的交集,我们查询的数据得分是通过表与表之间的主键和外键拉连接。如图下为列子A表和B表为要查询的表,A、主键为某个表的主键, B、外键为另外一个表和A表主键有关联的表进行连接,要从A表和B表中数据连接把相等的数据找出来连接A表里面的【1、2、3、4、5、6】和B表里面的【 2、3、 5、6、7、8 】用(left join)连接来获取同等的值或者说是相等的值只显示一遍提取出来放到一块去合并【1、2、3、4、5、6、7、8】进行连接。与此不同的是在查询中A和B 两个为互补形。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值