您现在的位置是:首页 > 正文

MySQL常用的七种join查询

2024-02-01 05:41:55阅读 6
create table t_emp(
	id int primary key, 
	name varchar(20),
	deptId int
);
 
create table t_dept(
	id int primary key,
	name varchar(20)
);
 
insert into t_dept(id, name) values(1, '设计部');
insert into t_dept(id, name) values(2, '开发部');
insert into t_dept(id, name) values(3, '测试部');
 
 
insert into t_emp(id, name, deptId) values(1, '张三', 1);
insert into t_emp(id, name, deptId) values(2, '李四', 2);
insert into t_emp(id, name, deptId) values(3, '王五', 0);

ps:为了说明方便,t_emp 表 说成 A 表, t_dept 表说成 B 表

一、INNER JION 内连接 ( A ∩ B )

SELECT * FROM t_emp e INNER JOIN t_dept d ON  e.deptId = d.id;

 

二、LEFT JOIN 左外连接( A 全有 )

 

SELECT * FROM t_emp e LEFT JOIN t_dept d ON e.deptId = d.id;

 

三、RIGHT JOIN 右外连接 (B 全有)

 

SELECT * FROM t_emp e RIGHT JOIN t_dept d ON e.deptId = d.id;

 

四、FULL JOIN 全外连接( A + B)

 

 

SELECT * FROM t_emp e LEFT JOIN t_dept d ON e.deptId = d.id UNION SELECT * FROM t_emp e RIGHT JOIN t_dept d ON e.deptId = d.id;

五、LEFT Excluding JOIN  ( A - B 即 A 表独有)

SELECT * FROM t_emp e LEFT JOIN t_dept d ON e.deptId= d.id WHERE d.id is null;

 

六、RIGHT Excluding JOIN ( B - A 即 B表独有)

SELECT * FROM t_emp e RIGHT JOIN t_dept d ON e.deptId= d.id WHERE e.id is null;

 

七、OUTER Excluding JOIN (A 与 B 各自独有)

 

SELECT * FROM t_emp e LEFT JOIN t_dept d ON e.deptId= d.id WHERE d.id is null
UNION
SELECT * FROM t_emp e RIGHT JOIN t_dept d ON e.deptId= d.id WHERE e.id is null;

本文转载自:https://blog.csdn.net/u010559460/article/details/98503010

网站文章

  • XXX银行项目部署

    XXX银行项目部署 一、下载项目代码 1、使用git工具下载代码 代码路径:推荐代码下载到桌面 git clone http://sunyard_姓名拼音@bitbucket.devops.hfdev/scm/zyc/rm-code.git 2、下载完成,桌面自动生成rm-code目录 3、选中桌面rm-code,右击鼠标,选中...

    2024-02-01 05:41:48
  • IDEA插件的存储位置及编程实现

    本文介绍了IDEA插件的存储位置,并提供了通过编程查找和操作这些插件的示例代码。无论您使用的是Windows还是macOS,都可以根据相应的存储位置找到已安装的插件,并对其进行管理。本文将介绍IDEA...

    2024-02-01 05:41:40
  • rabbitmq代码

    文章目录1.生产者代码2.消费者代码2.1 消费幂等性代码2.2 消费者rpc代码2.3 消费者消费重试2.4 消费者直接交换机代码2.5 基础代码 1.生产者代码

    2024-02-01 05:41:31
  • C语言-----格式字符、整型、字符型、浮点型

    C语言-----格式字符、整型、字符型、浮点型

    1、C语言格式字符:%d、%c、%s、%f、%lf等字符格式详解。2、C语言数据类型-----整型、字符型、浮点型详解。3、C语言转义符:\n、\t、\b、\r、\a等转义符详解。

    2024-02-01 05:40:55
  • 文件包含&条件竞争

    文件包含&条件竞争

    session.upload_progress与open_basedir、allow_url_fopen、allow_url_include等PHP配置一样,session.upload_progre...

    2024-02-01 05:40:48
  • Unity:圆底烧瓶中液体液面升降变化的效果

    Unity:圆底烧瓶中液体液面升降变化的效果

    在Unity中:如何实现圆底烧瓶中液体液面升降变化的效果

    2024-02-01 05:40:21
  • Gstreamer利用category调试

    之前总结过category的定义和使用,基于这个基础,发现利用gstreamer的categories和log系统,调试起来效率会提升很多。这两个例子都是Gstreamer中基础的部分,其他的elem...

    2024-02-01 05:40:14
  • 基本算法之枚举.205.余数相同问题

    求余

    2024-02-01 05:40:07
  • selenium自动化截图的方式

    自动化截图的三种方式

    2024-02-01 05:39:37
  • idea基本建立工程与注意事项

    1.src–>new–>Package 2.File–>New–>Module 3.File–>New–>Project 4.File–>Project Structure 5.具体包–>New -->Java Class 6.remove–>delete后检查.idea下的modules.xml

    2024-02-01 05:39:31