左连接 和右链接的区别,内连接和外连接的区别
假设有A,B两个表。
表A记录如下:
aID aNum
1 a20050111
2 a20050112
3 a20050113
4 a20050114
5 a20050115
表B记录如下:
bID bName
1 2006032401
2 2006032402
3 2006032403
4 2006032404
8 2006032408
--------------------------------------------
1.left join
sql语句如下:
select * from A
left join B
on A.aID = B.bID
结果如下:
aID aNum bID bName
1 a20050111 1 2006032401
2 a20050112 2 2006032402
3 a20050113 3 2006032403
4 a20050114 4 2006032404
5 a20050115 NULL NULL
(所影响的行数为 5 行)
结果说明:
left join是以A表的记录为基础的,A可以看成左表,B可以看成右表,left join是以左表为准的.
换句话说,左表(A)的记录将会全部表示出来,而右表(B)只会显示符合搜索条件的记录(例子中为: A.aID = B.bID).
B表记录不足的地方均为NULL.
--------------------------------------------
2.right join
sql语句如下:
select * from A
right join B
on A.aID = B.bID
结果如下:
aID aNum bID bName
1 a20050111 1 2006032401
2 a20050112 2 2006032402
3 a20050113 3 2006032403
4 a20050114 4 2006032404
NULL NULL 8 2006032408
(所影响的行数为 5 行)
结果说明:
仔细观察一下,就会发现,和left join的结果刚好相反,这次是以右表(B)为基础的,A表不足的地方用NULL填充.
--------------------------------------------
3.inner join
sql语句如下:
select * from A
innerjoin B
on A.aID = B.bID
结果如下:
aID aNum bID bName
1 a20050111 1 2006032401
2 a20050112 2 2006032402
3 a20050113 3 2006032403
4 a20050114 4 2006032404
结果说明:
很明显,这里只显示出了 A.aID = B.bID的记录.这说明inner join并不以谁为基础,它只显示符合条件的记录.
--------------------------------------------
PS:
LEFT JOIN操作用于在任何的 FROM 子句中,组合来源表的记录。使用 LEFT JOIN 运算来创建一个左边外部联接。左边外部联接将包含了从第一个(左边)开始的两个表中的全部记录,即使在第二个(右边)表中并没有相符值的记录。
语法:FROM table1 LEFT JOIN table2 ON table1.field1 compopr table2.field2
说明:table1, table2参数用于指定要将记录组合的表的名称。
field1, field2参数指定被联接的字段的名称。且这些字段必须有相同的数据类型及包含相同类型的数据,但它们不需要有相同的名称。
compopr参数指定关系比较运算符:"=", "<", ">", "<=", ">=" 或 "<>"。
如果在INNER JOIN操作中要联接包含Memo 数据类型或 OLE Object 数据类型数据的字段,将会发生错误
注:left和right是外连接,Inner是内连接。
多看看SQL的帮助就明白了
左连接 和右链接的区别,内连接和外连接的区别相关推荐
- mysql 中的左连接,右链接和内连接
左连接,右链接和内连接 在自己做项目的过程中,遇到了相关的数据库的查询的问题,在这里做一下简短的记录和总结 其中左连接和右链接属于外连接: 左连接: left (outer) join 右链接: ri ...
- 内网和外网的区别 连接不同设备上网
原来一直很疑惑,关于内网和外网的区别,看了好多博客,也没解决疑惑,但是看了书的定义,感觉豁然开朗.区别如下: 若计算机直接连接Modern并实现拨号上网时,利用百度查询到的ip地址是当前计算机在Int ...
- 内网和外网的区别+tcp协议ip协议详解
内网概念 即所说的局域网,比如学校的局域网,局域网内每台计算机的IP地址在本局域网内具有互异性,是不可重复的.但两个局域网内的内网IP可以有相同的. (连上WIFI,手机IP一般能在「设置」-「关于手 ...
- 前端开发需要知道内网和外网的区别
内网和外网的区别 内网(局域网) VS 外网(互联网/公网) 注意点 内网概念 外网概念 内外网联系及区别 推荐阅读 Vue源码学习目录 连点成线 - 前端成长之路 你越是认真生活,你的生活就会越美好 ...
- sql中的左连接、右链接、内连接
首先建立两张表,班级表和学生表如图 这里的数据中有的学生的班级不在班级表中,有的班级人数为0: 1.左连接 SELECT * FROM `student` LEFT JOIN class on stu ...
- 数据库中左连接和右链接的区别
Left Join / Right Join /inner join相关 关于左连接和右连接总结性的一句话: 左连接where只影向右表,右连接where只影响左表. Left Join select ...
- T-SQL学习中--内联接,外连接,交叉连接
交叉连接可以表A和表B是同一张表取得笛卡尔乘积. 比如说下面这种写法: SQLSELECT D.n AS theday, S.n AS shiftno FROM dbo.Nums AS Dcross ...
- 球幕投影中内投球和外投球的区别
随着互动投影技术在各类展厅中的普及,人们经常会看到有一种球形的互动投影表现形式.在听讲解员介绍时,有的展厅内别人会介绍这个是内投球,还有的展厅内有时会介绍是外投球.究竟内投球和外投球的区别是什么呢,左 ...
- 电脑连接2根网线同时上内网和外网
在实际工作当中,很多人遇到这样的问题,在公司上班,业务工作需要内网,而很多时候又要依靠外网查询资料和信息交流,那么如何实现一台电脑同时上内网和外网,不用手动切换网络,今天小编就在这里给大家详细讲解一下 ...
最新文章
- VMware虚拟机安装黑苹果MacOS Mojave系统详细教程
- Windows 10 编程遥控 Ardunio
- 移动互联时代:儿童教育重在内容和应用
- 017 矩阵中的路径
- Teams内嵌的卡片image的限制
- mimo雷达信号处理_雷达学术入门脉冲雷达信号处理概述
- android 本地图片分享,Android 把图片保存到本地相册
- windows进程中的内存结构(转)
- [2019杭电多校第四场][hdu6614]AND Minimum Spanning Tree(贪心)
- GoFrame带你从0-1快速入门
- ZDNS宣布完成B轮融资,根服务器之外,顶级域名系统迎重要机遇
- ones刻录软件怎么用
- VS2013安装教程
- 微信推广营销--如何提高微信订阅号的图文转化率?
- 拆弹实验-phase_5
- 计算机快捷操作知识,电脑基本操作知识
- django_models_外键应用
- 心灵的吟唱——读《湖海诗情录》
- 一个数和0xFFFF与运算的意义
- logback官网地址
热门文章
- ORA-01123:无法启动联机备份;未启用介质恢复(错误分析)
- oracle cluster(簇)的简单使用
- 字符集编码详解【ASCII 、GB2312、GBK、GB18030、unicode、UTF-8】(转)
- ResourceLoader 获取资源
- 《你不知道的JavaScript(上)》笔记——函数作用域和块作用域
- JavaScript | 数据属性与访问器属性
- 输入输出(Input and Output)
- C语言标准库函数qsort具体解释
- android IntentService
- 科学计算机乱码,谁知道我的科学计算器这是怎么了?屏幕一堆乱码,什么都按不了...