Mysql中常用的join连接方式


Posted in MySQL onMay 11, 2022

1.首先准备两张表

部门表:

Mysql中常用的join连接方式

员工表:

Mysql中常用的join连接方式

以下我们就对这两张表进行不同的连接操作

1.内连接

作用: 查询两张表的共有部分

语句:Select from tableA A Inner join tableB B on A.Key = B.Key

示例:SELECT * from employee e INNER JOIN department d on e.dep_id = d.id;

结果显示:通过这个查找的方法,我们没有查到id为8的数据

Mysql中常用的join连接方式

2.左连接

作用:把左边表的内容全部查出,右边表只查出满足条件的记录

语句:Select from tableA A Left Join tableB B on A.Key = B.Key

示例:SELECT * from employee e LEFT JOIN department d on e.dep_id = d.id;

结果显示:

Mysql中常用的join连接方式

3.右连接

作用:把右边表的内容全部查出,左边表只查出满足条件的记录

语句:Select from tableA A Left Join tableB B on A.Key = B.Key

示例:SELECT * from employee e RIGHT JOIN department d on e.dep_id = d.id;

结果显示:

Mysql中常用的join连接方式

4.查询左表独有数据

作用:查询A的独有数据

语句:Select from tableA A Left Join tableB B on A.Key = B.Key where B.key IS NULL

示例:SELECT * from employee e LEFT JOIN department d on e.dep_id = d.id WHERE d.id IS NULL;

结果显示:

Mysql中常用的join连接方式

5.查询右表独有数据

作用:查询B的独有数据

语句:Select from tableA A Right Join tableB B on A.Key = B.Key where A.key IS NULL

示例:SELECT * from employee e RIGHT JOIN department d on e.dep_id = d.id WHERE e.id IS NULL;

结果显示:

Mysql中常用的join连接方式

6.全连接

作用:查询两个表的全部信息

语句:Select from tableA A Full Outter Join tableB B on A.Key = B.Key

注:Mysql 默认不支持此种写法 Oracle支持       可以使用将左连接与右连接结合起来作为全连接

示例:

SELECT * from employee e LEFT JOIN department d on e.dep_id = d.id
UNION
SELECT * from employee e RIGHT JOIN department d on e.dep_id = d.id

结果显示:

Mysql中常用的join连接方式

7.查询左右表各自的独有的数据

作用:查询A和B各自的独有的数据

语句:Select from tableA A Full Outter Join tableB B on A.Key = B.Key where A.key = null or B.key=null

示例:

SELECT * from employee e LEFT JOIN department d on e.dep_id = d.id WHERE d.id is NULL
UNION
SELECT * from employee e RIGHT JOIN department d on e.dep_id = d.id WHERE e.dep_id is NULL

结果显示:

Mysql中常用的join连接方式

总结

到此这篇关于Mysql中常用的几种join连接方式的文章就介绍到这了!

MySQL 相关文章推荐
MySQL主从搭建(多主一从)的实现思路与步骤
May 13 MySQL
详解mysql三值逻辑与NULL
May 19 MySQL
MySql 8.0及对应驱动包匹配的注意点说明
Jun 23 MySQL
MySQL中存储时间的最佳实践指南
Jul 01 MySQL
MySQL非空约束(not null)案例讲解
Aug 23 MySQL
一次MySQL启动导致的事故实战记录
Sep 15 MySQL
一文带你探究MySQL中的NULL
Nov 11 MySQL
mysql timestamp比较查询遇到的坑及解决
Nov 27 MySQL
MySQL中B树索引和B+树索引的区别详解
Mar 03 MySQL
MySQL中优化SQL语句的方法(show status、explain分析服务器状态信息)
Apr 09 MySQL
mysql数据库实现设置字段长度
Jun 10 MySQL
mysql中关键词exists的用法实例详解
Jun 10 MySQL
MySQL的prepare使用以及遇到的bug
May 11 #MySQL
MySQL批量更新不同表中的数据
May 11 #MySQL
mysql查找连续出现n次以上的数字
May 11 #MySQL
mysql如何查询连续记录
May 11 #MySQL
mysql 体系结构和存储引擎介绍
MySQL数据库 安全管理
May 06 #MySQL
Mysql 文件配置解析介绍
May 06 #MySQL
You might like
Win下如何安装PHP的APC拓展
2013/08/07 PHP
php程序总是提示验证码输入有误解决方案
2015/01/07 PHP
Laravel5中防止XSS跨站攻击的方法
2016/10/10 PHP
PHP迭代与递归实现无限级分类
2017/08/28 PHP
PHP+AJAX 投票器功能
2017/11/11 PHP
PHP支付宝当面付2.0代码
2018/12/21 PHP
非阻塞动态加载javascript广告实现代码
2010/11/17 Javascript
javascript判断用户浏览器插件安装情况的代码
2011/01/01 Javascript
jquery实现点击TreeView文本父节点展开/折叠子节点
2013/01/10 Javascript
利用jquery写的左右轮播图特效
2014/02/12 Javascript
node.js中的fs.fchmod方法使用说明
2014/12/16 Javascript
Spring mvc 接收json对象
2015/12/10 Javascript
javascript中eval解析JSON字符串
2016/02/27 Javascript
微信小程序使用request网络请求操作实例
2017/12/15 Javascript
js数组常用最重要的方法
2018/02/04 Javascript
vue组件中使用props传递数据的实例详解
2018/04/08 Javascript
40行代码把Vue3的响应式集成进React做状态管理
2020/05/20 Javascript
如何使用JavaScript实现无缝滚动自动播放轮播图效果
2020/08/20 Javascript
JS指定音频audio在某个时间点进行播放
2020/11/28 Javascript
[02:51]DOTA2战队出征照拍摄花絮 TI3明星化身时尚男模
2013/07/22 DOTA
python调用windows api锁定计算机示例
2014/04/17 Python
Win7 64位下python3.6.5安装配置图文教程
2020/10/27 Python
使用Python通过win32 COM实现Word文档的写入与保存方法
2018/05/08 Python
python批量导入数据进Elasticsearch的实例
2018/05/30 Python
Python3.4 tkinter,PIL图片转换
2018/06/21 Python
使用urllib库的urlretrieve()方法下载网络文件到本地的方法
2018/12/19 Python
python scp 批量同步文件的实现方法
2019/01/03 Python
详解Python用三种方式统计词频的方法
2019/07/29 Python
Pandas中DataFrame基本函数整理(小结)
2020/07/20 Python
采购文员岗位职责
2013/11/20 职场文书
文秘自荐信
2014/06/28 职场文书
咖啡店创业计划书范文
2014/09/15 职场文书
个人授权委托书
2014/09/15 职场文书
党员群众路线自我剖析材料
2014/10/06 职场文书
学习经验交流会演讲稿
2015/11/02 职场文书
Python基础之元编程知识总结
2021/05/23 Python