数据库表连接之左连接(LEFT JOIN)、右连接(RIGHT JOIN)和内连接(INNER JOIN)
现在有两张表,计算机学院学生表和选课表,表的结构如图所示:
Student
SCourse
为了更加直观的解释,先以上述两张表为基础执行相应的SQL语句,再进行解释。
左连接(LEFT JOIN)
SQL语句
SELECT * FROM Student LEFT JOIN SCourse ON Student.SNumber = SCourse.SID
执行结果
详细解释
LEFT JOIN首先取出的是主表的所有记录,在这个例子中也就是Student表的所有记录,然后按ON后面的条件进行连接,满足条件则把附表的相应记录加到主表的相应记录中,若没有满足条件的则相应字段为Null,也就是上图的结果。
右连接(RIGHT JOIN)
SQL语句
SELECT * FROM Student RIGHT JOIN SCourse ON Student.SNumber = SCourse.SID
执行结果
详细解释
RIGHT JOIN首先取出的是也是主表的所有记录,在这个例子中是SCourse表的所有记录,然后按ON后面的条件进行连接,满足条件则把附表的相应记录加到主表的相应记录中,若没有满足条件的则相应字段为Null,也就是上图的结果。
内连接(INNER JOIN)
SQL语句
SELECT * FROM Student INNER JOIN SCourse ON Student.SNumber = SCourse.SID
执行结果
详细解释
INNER JOIN不以哪个表为主表,只连接满足条件的记录。它就等价于:
SELECT * FROM Student, SCourse WHERE Student.SNumber = SCourse.SID
————————————————
版权声明:本文为CSDN博主「初心不忘」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/shuaijiasanshao/article/details/51387192
数据库表连接之左连接(LEFT JOIN)、右连接(RIGHT JOIN)和内连接(INNER JOIN)相关推荐
- mysql join 会算笛卡尔积吗_mysql 内连接、左连接会出现笛卡尔积?
这周的部门周会,分享的同事说的是数据库优化相关,过程中,一个同事跟我讨论左连接查询,是不是笛卡尔积.我第一反应,左连接肯定不是笛卡尔积啊,左连接是以左表为准,左表有m条记录,则结果集是m条记录(哈哈, ...
- 左连接 和右链接的区别,内连接和外连接的区别
假设有A,B两个表. 表A记录如下: aID aNum 1 a20050111 2 a20050112 3 a20050113 4 a200 ...
- mysql 什么时候用内连接_mysql显示内连接和隐式内连接的区别,什么时候非要用到显示内连接。...
显式内连接就是使用inner join的办法,写起来复杂些 以windows版本mysql里自带的sakila数据库为例 显式内连接语法 select 字段名 from 表1 join 表2 on 连 ...
- 数据库表连接总结:等值连接, 自然连接,左外连接,右外连接,内连接,全外连接;
[1]等值连接 1)连接:凡是查询涉及到两个以上的表,就需要将表连接: 2)就是用where子句做的连接查询:连接查询的列名可以不同: [2]自然连接: select * from a_tbl na ...
- MySQL数据库的内连接,左外连接和右外连接查询
1.首先谈一谈数据库的连接查询有什么作用? 简单的说就是在实际生活中,当我们查询某些数据的时候,一张表不可能为我们提供足够多的数据,其次在数据库的设计的时候,考虑到表的结构和复杂性,会设计多张分类表, ...
- mysql 两表连接删除数据库_Mysql (二)Mysql 数据库表增删改查
一.表操作 1.[增加] create table DBname.table_name(id int, namevarchar(255))engine=MyISAM charset=gbk; 2.[删 ...
- 第七周 Java语法总结之数据库大全_DDL_DML_DQL_约束_备份与还原_表的关系_三大范式_多表查询(内连接_外连接_子查询)_musql事务_隔离级别
文章目录 数据库 DDL语句:数据库定义语句 1.库的增删查改 1.查询当前mysql下所有的数据库 2.创建数据库 3.查看创建数据库的默认的字符集(了解) 4.修改数据库的字符集(了解) 5.删除 ...
- mysql数据库多表查询(内连接,外连接,自连接,子查询及案例分析)
mysql数据库多表查询 之前接触的项目或者自己涉及的部分对于多表查询的使用都比较的少,常常是自己更具案例进行学习,最近见到的比较的多,所以今天就好好的总结一下,为下一步学习做准备! 1.多表查询关系 ...
- open表和closed表_什么是左外连接?左外连接在工作表查询中的应用
大家好,我们今天接着讲连接的方式的第二种,左外连接.在上两讲中,我们讲了内连接,并用内连接分别连接数据库和EXCEL进行了实例的应用讲解,我们今日讲解第二种连接:左外联接. 所谓左外联接,是以左表为基 ...
- oracle左表关联与又表关联,Oracle左连接,右连接
数据表的连接有: 1.内连接(自然连接): 只有两个表相匹配的行才能在结果集中出现 2.外连接: 包括 (1)左外连接(左边的表不加限制) (2)右外连接(右边的表不加限制) (3)全外连接(左右两表 ...
最新文章
- 苹果四大供应商向高通索赔90亿;金立否认裁定破产清算
- Tensor Decomposition
- CmRegisterCallback监控注册表框架
- Linux备份MySQL xshell_linux shell脚本备份mysql数据库
- jQuery--.css(width)和.width()的区别
- gui显示文本动态框
- QML笔记-自定义控件的2种点击方式(推荐第二种)
- 配电脑时什么配置可以缩水?
- android开发学习——关于activity 和 fragment在toolbar上设置menu菜单
- 前端和java选哪个_web前端和java哪个好?新手该选择哪个
- wps软件打不开共享超链接_wps excel 超链接 打不开 怎么解决?
- P1427 小鱼的数字游戏——栈的初次会面
- Coloring Tree
- 亲自动手写一个深度学习框架
- 立志高远;毕业后计划
- 路由器桥接:老式路由器桥接隐藏网络并开启无线隐藏网络
- python编写一个接口,链接mysql数据库查询数据
- Android 实现简单的悬浮窗按钮(一)
- java new jsonparser_JsonParser is deprecated
- PT2264\pt2294(带编码)无线、接收、收发