MySQL连接查询——外连接
外连接
外连接分为左外连接,右外连接和全外连接。
左外连接
左外连接的结果集包括左表所有记录和右表中满足连接条件的记录,结果集中那些不符合连接条件的来源于右表的列值为null。
语法
SELECTfieldlist
FROMtable1
LEFT JOIN table2 ON
table1.column1 = table2.column2;
左外连接就是在等值连接的基础上加上主表中的未匹配数据
示例:查询所有非空调车的车牌号、型号、线路号、起点站和终点站
分析:需要显示所有非空调车,所以需要外连接
SELECTplateNo '车牌号',model '型号',lineNo '线路号',from_station '起点站',end_station '终点站'
FROMvehicle v
LEFT JOIN line l ON v.lineID = l.lineID
WHEREtype = '非空调车';
执行结果如图:
最后一行为非匹配行,来源于右表列相应字段为空
右外连接
右外连接与左外连接相似,是左外连接的反向连接。
语法
SELECTfieldlist
FROMtable1
RIGHT JOIN table2 ON
table1.column1 = table2.column2;
示例:查询所有线路的车辆信息,要求显示车牌号、型号、线路号、起点站和终点站
分析:需要显示所有非空调车,所以需要外连接
SELECTplateNo '车牌号',model '型号',lineNo '线路号',from_station '起点站',end_station '终点站'
FROMvehicle v
RIGHT JOIN line l ON v.lineID = l.lineID;
执行结果如图:
最后一行为非匹配行,来源于左表列相应字段为空
内连接是指连接结果仅包含符合连接条件的行,参与连接的两个表都应该符合连接条件。
而外连接结果不仅包含符合连接条件的行同时也包含自身不符合条件的行
MySQL连接查询——外连接相关推荐
- mysql连接查询 内连接查询 外连接查询
连接查询 连接查询是将两个或两个以上的表按照某个条件连接起来,从中选取需要的数据: t_book表: id bookName price author bookTypeId t_bookType表: ...
- mysql限制查询/外连接查询和内连接查询/联合查询
mysql查询之limit限制查询 作用:对查询结果起到限制条数的作用 语法:limit n,m n:代表起始条数值,默认为0:m代表取出的条数 应用场合:数据量过多时,起到限制作用 如图 mysql ...
- 数据操作语言:连接查询-外连接
为什么要使用外连接 如果说陈浩是一名临时人员, 没有固定的部门]编制,那么我们想查询每名员工和他的部门门名称,用内连接就会漏掉陈浩,所以要引入外连接的语法才能解决这个问题 外连接简介 外连接与内连接的 ...
- MySQL数据库连接查询(外连接)
*外连接查询 语法:SELECT 字段列表 FROM 表名1 LEFT|RIGHT|FULL JOIN 表名2 ON 表名1.字段名1 = 表名2.字段名1 ON后面表示两张表通过某种连接条件,多半为 ...
- Mysql的多表查询(表添加,多表查询练习:笛卡尔积、内连接、外连接、子查询、UNION组合查询)
https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注! 欢迎关注微信公众号:宝藏女孩的成长日记 如有转载,请注明出处(如不注明,盗者必究) 目录 一.表的创建 ...
- sql查询:单表、多表、左连接、外连接、高级查询
sql查询 一.sql语句 标准SQL包含了4种基本的语句类别: (1)DDL语句,数据定义语句,主要用来定义数据库,表名,字段,例如create,drop,alter. (2)DML语句,数据操作语 ...
- mysql 多表既有内连接又有外连接_MySQL 多表查询中的内连接和外连接
一般情况下一个网站的数据库通常会有多张数据表组成,这些数据表分别存储网站不同区域的内容.数据表之间可以用类似 ID 的字段来关联,在查询的时候可以通过一条语句来查询多张表的内容.例如 论坛的数据库,帖 ...
- MySQL 内连接、左连接、右连接、外连接、多表查询
MySQL 内连接.左连接.右连接.外连接.多表查询 构建环境: create table t_emp(id int primary key, name varchar(20),deptId int ...
- 4.mysql数据库创建,表创建模等模板脚本,mysql_SQL99标准的连接查询(内连接,外连接,满外连接,交叉连接)
mysql数据库创建,表创建模等模板脚本 --用root用户登录系统,执行脚本 --创建数据库 create database mydb61 character set utf8 ; --选择数 ...
最新文章
- 转 小辉_Ray CORS(跨域资源共享)
- 现在,Serverless 真的已经成熟了吗?
- 特征重要度(feature importance)如何获取、排序、可视化、以及可视化阈值设置?
- 【转】Android开发中adb启动失败adb连接异常的解决办法 offline
- MyBitis(iBitis)系列随笔之六:mybitis与spring集成
- leetcode619. 只出现一次的最大数字(SQL)
- vscode设置go-lint警告提示
- lucene Collector 文档收集器
- word中添加mathtype
- Redis的三个框架:Jedis,Redisson,Lettuce
- python下载网易云音乐付费歌曲有哪些_学习python总结 - 下载网易云音乐单首歌曲...
- 演化博弈论简介(转)
- mysql注入转义绕过_SQL注入防御绕过——二次注入
- Ubuntu18.04 安装gflags及解决错误
- 前端图片压缩(几乎无损)
- mysql学习心得总结
- Java程序实现繁体字转换简体字
- Java并发 JUC 一文快速入门
- OLE操作EXCEL
- java poi 添加列数据_java使用POI将数据导出放入Excel
热门文章
- 英文版权声明_想避免版权问题,这些网站你一定需要
- Python字符串格式化 (%占位操作符)
- less和sass的定义和区别
- 新手必看!如何在windows下安装Python(Python入门教程)
- leetcode:Permutations1+2nbsp;+nbsp;Rotat…
- [转载]尺度函数与小波函数
- Servlet的执行原理
- 通过云服务器对内网穿透实现外网访问群晖NAS
- 如何实现rsync远程同步和inotify实时同步
- AOP中的切点、切面、通知等