首页 > 数据库 >[标准sql] 内连接和外连接的区别

[标准sql] 内连接和外连接的区别

时间:2023-09-12 14:36:37浏览次数:38  
标签:OUTER 区别 sql 匹配 子句 左表 JOIN 连接

连接条件可在FROM或WHERE子句中指定,建议在FROM子句中指定连接条件。WHERE和HAVING子句也可以包含搜索条件,以进一步筛选连接条件所选的行。

连接可分为以下几类:

内连接(典型的连接运算,使用像 = 或 <> 之类的比较运算符)。包括相等连接和自然连接。

内连接使用比较运算符根据每个表共有的列的值匹配两个表中的行。例如,检索 students 和 courses 表中学生标识号相同的所有行。

外连接外连接可以是左向外连接、右向外连接或完整外部连接。

在FROM子句中指定外连接时,可以由下列几组关键字中的一组指定:

LEFT JOIN 或 LEFT OUTER JOIN。

左向外连接的结果集包括LEFT OUTER子句中指定的左表的所有行,而不仅仅是连接列所匹配的行。如果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表列均为空值。

RIGHT JOIN 或 RIGHT OUTER JOIN。

右向外连接是左向外连接的反向连接。将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为左表返回空值。

FULL JOIN 或 FULL OUTER JOIN。

完整外部连接返回左表和右表中的所有行。当某行在另一个表中没有匹配行时,则另一个表的选择列表列包含空值。如果表之间有匹配行,则整个结果集行包含基表的数据值。

交叉连接。交叉连接返回左表中的所有行,左表中的每一行与右表中的所有行组合。交叉连接也称作笛卡尔积。


标签:OUTER,区别,sql,匹配,子句,左表,JOIN,连接
From: https://blog.51cto.com/u_16207997/7445235

相关文章

  • cookie和session的区别,分布式环境怎么保存用户状态
    1、cookie数据存放在客户的浏览器上,session数据放在服务器上。2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,考虑到安全应当使用session。3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用C......
  • cookie和session的区别,分布式环境怎么保存用户状态
    1、cookie数据存放在客户的浏览器上,session数据放在服务器上。2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,考虑到安全应当使用session。3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用COOK......
  • 快解析内网穿透如何帮你轻松实现外网远程连接?
    外网相信大家多少了解一点,其实就是连接不同地区局域网,或者是城域网计算机通信的远程网,因此被称为广域网或者公网。在这个互联网信息时代,很多用户还是不知道怎么连接外网?外网远程桌面连接的步骤是怎样的?下文一起来了解一下。外网是什么意思?外网又被称为广域网,它可以连接极其大的物理......
  • 如何使用Oracle Enterprise Manager Database Express连接到PDB数据库
    1.问题重复弹出登录框,无法登陆关闭登录框,显示invalidcontainername2.解决方法参考链接为PDB启动EMExpress要为PDB启动EMExpress,请确保PDB以读/写模式打开,然后尝试本主题中描述的以下方法之一(按所示顺序):连接到包含PDB的CDB的CDB$ROOT容器,并发出以下SQL......
  • SQL SERVER 自动备份及自动清除设置
    一、打开管理,找到维护计划,右键选择“维护计划向导”;二、修改计划名称,维护备份说明(可为空),点击“更改”按钮; 三、选择计划类型:“自动执行”,频率设置“每天”,设置执行计划时间,点击“确定” 四、此时计划项已有作业计划,点击“下一步”; 五、维护任务,勾选“备份数据库(完整)”,......
  • N天爆肝数据库——MySQL(1)
    (N天爆肝数据库——MySQL(1))链接:link这是csdn专栏链接,大家可以看一看,提提意见数据库概念理解==数据库DB存储数据的仓库数据库管理系统DBMS操纵和管理数据库的大型软件==SQL操作关系型数据库的编程语言,定义了用一套操作关系型数据库同意标准学习SQL的作用SQL是一门......
  • 进口化妆品和国产化妆品备案有什么区别呢?
    账号申请上面是有区别的:除了共同需要的资料以外,如果注册和备案人是境外企业的话,那还需要提交以下资料:1,填写境内负责人信息表格;2,境内负责人公证书原件以及授权书原件;境外生产规范资料原件,如果你无法提供原件,那就要提供中国公证机关公证的或者是我国使(领)馆确认的复印件。备案资料差异......
  • setInterval和setTimeout的区别
    在制作网页动态效果时,一定会遇到某些需求,要求某段程序等待多时时间后再开始执行,就像在我们的生活中一样,待会儿再开始做一件事。在JavaScript中主要通过定时器实现此类需求,本文将对定时器做一个概括,正对setTimeout()做一个详细用法总结。一.setInterval与setTimeout的区别setInterva......
  • JavaScript中apply, call和bind的区别
    首先要知道,JavaScript中apply,call和bind的作用基本都是一样的,就是用来改变函数执行时的上下文,或者说改变函数的this对象指向在详细了解它们的区别之前,我们先来看一个例子varname="lucky";constobj={name:"martin",say:function()......
  • 【转载】MSSQL @@ERROR 使用
    mssql@@ERROR使用mssql@@ERROR是一个系统保存的整型变量,它是用来保存上一次Transact-SQL语句执行时发生错误的错误代码。可以使用SELECT@@ERROR查看该变量的值。它通常用在TRY-CATCH块中,在CATCH块中将错误信息输出到日志或者显示给用户。下面通过两个示例来说明如何使用mssq......