您现在的位置是:首页» windows系统» full join和inner join的区别,sql full join的用法

full join和inner join的区别,sql full join的用法

2023-12-05 04:27:56
今天小编为大家分享Windows系统下载、Windows系统教程、windows相关应用程序的文章,希望能够帮助到大家! 1、Join有时为了得到完整的结果,需要从两个或更多的表中获取结果。就需要执行join数据库中的表可通过键将彼此联系起来。主键(Primary Key)是一个列,在这个列中的每一行的值

今天小编为大家分享Windows系统下载、Windows系统教程、windows相关应用程序的文章,希望能够帮助到大家!

1、Join有时为了得到完整的结果,需要从两个或更多的表中获取结果。就需要执行join数据库中的表可通过键将彼此联系起来。主键(Primary Key)是一个列,在这个列中的每一行的值都是唯一的。

2、引用两个表,可以通过引用两个表的方式,从两个表中获取数据。

3、SQL INNER JOIN关键字,在表中存在至少一个匹配时,INNER JOIN关键字返回行。

4、SQL LEFT JOIN关键字,LEFT JOIN关键字会从左表(table_name1)那里返回所有的行,即使在右表(table_name2)中没有匹配的行。

5、最后SQL RIGHT JOIN关键字,RIGHT JOIN关键字会右表(table_name2)那里返回所有的行,即使在左表(table_name1)中没有匹配的行。

对于SQL中innerjoin、outerjoin和crossjoin的区别,如果你使用join连表,缺陷的情况下是innerjoin,另外,开发中使用的leftjoin和rightjoin属于outerjoin,另外outerjoin还包括fulljoin.下面我通过图标让大家认识它们的区别。

现有两张表,TableA是左边的表。TableB是右边的表。其各有四条记录,其中有两条记录name是相同的:

1.INNERJOIN产生的结果是AB的交集

SELECT*FROMTableAINNERJOINTableBONTableA.name=TableB.name

2.LEFT[OUTER]JOIN产生表A的完全集,而B表中匹配的则有值,没有匹配的则以null值取代。

SELECT*FROMTableALEFTOUTERJOINTableBONTableA.name=TableB.name

3.RIGHT[OUTER]JOIN产生表B的完全集,而A表中匹配的则有值,没有匹配的则以null值取代。

SELECT*FROMTableARIGHTOUTERJOINTableBONTableA.name=TableB.name

4.FULL[OUTER]JOIN产生A和B的并集。对于没有匹配的记录,则会以null做为值。

SELECT*FROMTableAFULLOUTERJOINTableBONTableA.name=TableB.name

你可以通过isNULL将没有匹配的值找出来:

SELECT*FROMTableAFULLOUTERJOINTableBONTableA.name=TableB.name

WHERETableA.idISnullORTableB.idISnull

wwW.Xtw.Com.cN系统网专业的PC、手机系统开发下载平台,HarmonyOS系统、安卓、OS、windows电脑重装系统在线下载安装,操作系统平台技术学习,攻略教程,技术交流。

免责声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。内容仅供参考使用,不准确地方联系删除处理!

联系邮箱:773537036@qq.com

标签: 语句 sql fulljoin