iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL 四种连接和多表查询详解
  • 181
分享到

MySQL 四种连接和多表查询详解

2024-04-02 19:04:59 181人浏览 薄情痞子
摘要

目录Mysql内连接、左连接、右连接、外连接、多表查询构建环境:一、INNERJioN内连接(A∩B)二、LEFTJOIN左外连接(A全有)三、RIGHTJOIN右外连接(B全有)四

mysql 内连接、左连接、右连接、外连接、多表查询

构建环境:


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 )

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0cqsICkR-1619189927045)(9mysql_多表查询_内连接_右连接_左连接_嵌套查询.assets/20190805175111307.png)]


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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YVymu987-1619189927047)(9mysql_多表查询_内连接_右连接_左连接_嵌套查询.assets/20190805175234304.png)]

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-860jyRX1-1619189927049)(9mysql_多表查询_内连接_右连接_左连接_嵌套查询.assets/20190805175441802.png)]


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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PXjhiYYa-1619189927051)(9mysql_多表查询_内连接_右连接_左连接_嵌套查询.assets/20190805175712415.png)]

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-s0OFZKj1-1619189927054)(9mysql_多表查询_内连接_右连接_左连接_嵌套查询.assets/20190805175813118.png)]


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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bx74QMwd-1619189927056)(9mysql_多表查询_内连接_右连接_左连接_嵌套查询.assets/20190805175959230.png)]

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-b125K8dF-1619189927057)(9mysql_多表查询_内连接_右连接_左连接_嵌套查询.assets/20190805180116571.png)]


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;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qLSli8R9-1619189927058)(9mysql_多表查询_内连接_右连接_左连接_嵌套查询.assets/20190805180416613.png)]

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NQFvqcNu-1619189927060)(9mysql_多表查询_内连接_右连接_左连接_嵌套查询.assets/20190805180611367.png)]


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表独有)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0Ak37mwF-1619189927062)(9mysql_多表查询_内连接_右连接_左连接_嵌套查询.assets/20190805181033398.png)]


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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7czqoOP5-1619189927062)(9mysql_多表查询_内连接_右连接_左连接_嵌套查询.assets/20190805181145897.png)]

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9YEEUSOD-1619189927063)(9mysql_多表查询_内连接_右连接_左连接_嵌套查询.assets/20190805181255259.png)]


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;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dzO9X4QC-1619189927064)(9mysql_多表查询_内连接_右连接_左连接_嵌套查询.assets/2019080518143030.png)]

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注编程网的更多内容!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL 四种连接和多表查询详解

本文链接: https://www.lsjlt.com/news/130643.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL 四种连接和多表查询详解
    目录MySQL内连接、左连接、右连接、外连接、多表查询构建环境:一、INNERJION内连接(A∩B)二、LEFTJOIN左外连接(A全有)三、RIGHTJOIN右外连接(B全有)四...
    99+
    2024-04-02
  • MySQL多表连接查询详解
    目录多表连接查询内连接左连接右连接子查询总结多表连接查询 表与表之间的连接分为内连接和外连接 内连接:仅选出两张表互相匹配的记录 外连接:既包括两张表匹配的记录,也...
    99+
    2024-04-02
  • 连接查询(多表查询)——MySQL
    连接查询(多表查询) 又称多表查询,当查询的字段涉及多个表的时候,就要用到连接查询 分类: 为表起别名: 提高语句的简洁度区分多个重名字段注意:如果为表起了别名,则查询的字段就不能使用原来的别名去限定 内连接 查询A、B 交集部分数据 语...
    99+
    2023-08-18
    数据库 mysql 多表查询
  • mysql连接查询详解
    目录1.连接查询2、连接类型内连接定义:语法1: 语法2: 3个表连接显示指定列左连接定义:语法:右连接  定义:语法:自关联定义 ...
    99+
    2024-04-02
  • 详解MySQL多表查询
    目录多表查询内连接查询外连接查询子查询最后说一句多表查询 内连接查询 语法 -- 隐式内连接 SELECT 字段列表 FROM 表1,表2… WHERE 条件; -- 显示内连接 SELECT ...
    99+
    2023-04-19
    MySQL多表查询 MySQL查询
  • MySQL的连接方式和多表查询方法
    本篇内容主要讲解“MySQL的连接方式和多表查询方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL的连接方式和多表查询方法”吧!目录MySQL 内连接、左连接、右连接、外连接、多表查询...
    99+
    2023-06-20
  • 【MySQL】详解聚合查询、多表查询
    MySQL 增删查改(进阶) 文章目录 MySQL 增删查改(进阶)01 表的设计表的三大范式 02 查询操作进阶新增聚合查询countsumavgmaxmin 分组查询 GR...
    99+
    2023-10-07
    mysql adb 数据库
  • mysql 子查询与连接表详情
    目录1、什么是子查询?2、自联接3、自然联接4、外部联结1、什么是子查询? 列出订购物品TNT2的所有客户: select cust_id from orders wh...
    99+
    2024-04-02
  • MybatisPlus多表连接查询
    mybatis-plus作为mybatis的增强工具,它的出现极大的简化了开发中的数据库操作,但是长久以来,它的联表查询能力一直被大家所诟病。一旦遇到left join或right join的左右连接,你还是得老老实实的打开xml文件,手写...
    99+
    2023-08-16
    mybatis java mysql
  • mysql的内连接,左连接和右链接查询详解
    mysql> SELECT * FROM tcount_tbl; +---------------+--------------+ | runoob_author | ...
    99+
    2024-04-02
  • mysql如何实现多表连接查询
    这篇文章给大家分享的是有关mysql如何实现多表连接查询的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。实际的项目,存在多张表的关联关系。不可能在一张表里面就能检索出所有数据。如果...
    99+
    2024-04-02
  • MySQL连接查询实例详解
    本文实例讲述了MySQL连接查询。分享给大家供大家参考,具体如下: 创建表suppliers: CREATE TABLE suppliers ( s_id int NOT NULL AUTO_...
    99+
    2024-04-02
  • MySQL:多表查询(全面详解)
    MySQL:多表查询 前言附录:常用的 SQL 标准有哪些一、一个案例引发的多表连接1、案例说明2、笛卡尔积(或交叉连接)的理解3、案例分析与问题解决 二、多表查询分类讲解1、等值连接 vs 非等值连接1.1 等值连接1.2 非...
    99+
    2023-08-16
    mysql 数据库
  • mysql多表查询的几种分类详细
    目录分类1:等值连接vs非等值连接1.等值连接2.非等值连接分类2:自连接vs非自连接分类3:内连接vs外连接总结:多表查询分类 分类1:等值连接 vs 非等值连接 1. 等值连接 ...
    99+
    2024-04-02
  • MySql多表链接查询详细教程
    目录1.什么是连接查询:2. 连接查询的分类:3.笛卡尔积现象:4.避免笛卡尔积现象5.内连接1)等值连接2)非等值连接3)自连接6.外连接7.内连接和外连接的区别:8.三个表连接查询1.什么是连接查询: 在实际开发中大...
    99+
    2024-04-02
  • mysql中怎么实现多表连接查询
    这篇文章将为大家详细讲解有关mysql中怎么实现多表连接查询,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。代码如下:SELECT FId ...
    99+
    2024-04-02
  • MySQL多表查询内连接外连接详解,join、left join、right join、full join的使用
    目录 1、多表查询概览 1.1、分类 1.2、外连接的分类 1.3、常用的SQL语法标准 2、内外联接案例 2.1、初始化表 2.2、内连接 2.3、外连接案例 2.4、全连接案例 2.5、union和union all...
    99+
    2023-09-02
    mysql 数据库 java
  • MySql数据库单表查询与多表连接查询效率对比
    这段时间在做项目的过程中,遇到一个模块,数据之间的联系很复杂,在建表的时候就很纠结,到底该怎么去处理这些复杂的数据呢,是单表查询,然后在业务层去处理数据间的关系,还是直接通过多表连接...
    99+
    2024-04-02
  • MySQL多表查询的案例详解
    多表查询 案列说明 笛卡尔积的理解 select id,department_name from employees,departments;#错的 select...
    99+
    2024-04-02
  • 【MySQL系列】MySQL复合查询的学习 _ 多表查询 | 自连接 | 子查询 | 合并查询
    「前言」文章内容大致是对MySQL复合查询的学习。 「归属专栏」MySQL 「主页链接」个人主页 「笔者」枫叶先生(fy) 目录 一、基本查询回顾二、多表查询三、自连接四、子查询4.1 单行子查询4.2 多行子查询4....
    99+
    2023-08-30
    mysql 学习 android
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作