加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 电商 > 正文

多表毗连中的各类毗连的区别和接洽

发布时间:2018-08-18 11:49:42 所属栏目:电商 来源:站长网
导读:常识点: 1、各类毗连的界说和用途 内毗连: 平等毗连、非平等毗连(常用就不讲了) 天然毗连,本身找沟通的字段,不消给出两个表之间拿哪一罗列办较量。所谓天然(不常用) 交错毗连,选出来之后,举办笛卡乘积。假如要列出全部的组适时,这个有效。(不

常识点:
      1、各类毗连的界说和用途
          内毗连:
                 平等毗连、非平等毗连(常用就不讲了)
                 天然毗连,本身找沟通的字段,不消给出两个表之间拿哪一罗列办较量。所谓天然(不常用)
                 交错毗连,选出来之后,举办笛卡乘积。假如要列出全部的组适时,这个有效。(不常用)
          外毗连:
                 阁下外毗连 (常用就不讲了)
                 全外毗连 FULL JOIN(不常用)。
                  归并毗连(一样平常不消),是选出不匹配的记录  便是全毗连减去内毗连的荟萃。
      2、要害是弄清晰它们之间的区别。
                 1)Full OUTER JOIN 和cross join 有什么区别?
                   答:交错毗连是属于内毗连中的一种非凡的毗连。基础不存在任何前提毗连,应该说是范畴最大的毗连。就是
                       笛卡尔乘积。   而 全外毗连是起首举办内毗连,然后将全部没匹配上的记录也选出来,但不在对不匹配的举办笛卡尔乘积
                       只是加进来。  而交错毗连是会将没匹配上的也要举办乘积的。
相干标题:
You are a database developer for an automobile dealership. You are designing a database to support a 
web site that will be used for purchasing automobiles. A person purchasing an automobile from the web 
site will be able to customize his or her order by selecting the model and color. 
The manufacturer makes four different models of automobiles. The models can be ordered in any one of 
five colors. A default color is assigned to each model. 
The models are stored in a table named Models, and the colors are stored in a table named Colors. These 
tables are shown in the exhibit. 
You need to create a list of all possible model and color combinations. Which script should you use? 
 

 (说明,这里是要列出车型和颜色的全部组合,而基础不涉及前提,)
   A            SELECT m.ModelName, c.ColorName 
FROM Colors AS c FULL OUTER JOIN Models AS m 
   ON c.ColorID = m.ColorID 
ORDER BY m.ModelName, c.ColorName  (说明,这里是全外毗连,由于车型内外只有一个颜色ID(缺省),那么这里就只有8(4+4)笔记录选出来了)
 
   B            SELECT m.ModelName, c.ColorName  
FROM Colors AS c CROSS JOIN Models AS m 
ORDER BY m.ModelName, c.ColorName       (谜底在此,交错毗连就是列出全部的也许组合20(5*4)笔记录,基础不消前提)
 
   C            SELECT m.ModelName, c.ColorName 
FROM Colors AS m INNER JOIN Colors AS c 
ON m.ColorID = c.ColorID 
ORDER BY m.ModelName, c.ColorName  (说明,内毗连,缺省的环境下只能查出4笔记录)
 
   D            SELECT m.ModelName, c.ColorName 
FROM Colors AS c LEFT OUTER JOIN Models AS m (说明,左外毗连,缺省环境下只能查出5笔记录) 
ON c.ColorID = m.ColorID 
UNION 
SELECT m.ModelName, c.ColorName 
FROM Colors AS c RIGHT OUTER JOIN Models AS m  (说明,右外毗连,缺省环境下只能查处4笔记录)
ON c.ColorID = m.ColorID 
ORDER BY m.ModelName, c.ColorName
 
   E            SELECT m.ModelName 
FROM Models AS m 
UNION 
SELECT c.ColorName     (说明,这个是归并毗连,是查询不匹配的行。 应该是   8-4=4 笔记录,就是车型内外不存在的颜色) 
FROM Colors AS c 
ORDER BY m.ModelName

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读