七种 JION 的理论|学习笔记

简介: 快速学习七种 JION 的理论

开发者学堂课程【MySQL 高级应用 - 索引和锁七种 JION 的理论】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/598/detail/8589


七种 JION 的理论


内容介绍

一、JION 的类型

二、七种 JION 的理论


一、JION 的类型

JION 最常见的类型有内连接、外连接、左连接、交叉链接、笛卡尔级、全连接。

以下图为所有的 jion 关系。

image.png


二、七种JION的理论

1.内连接

image.png

SELECT<select_list>

FROM TableAA

INNER JOIN YableB B

ON A.Key= B.Key

A 是一张表 B 是一张表,它们两个的共有部分,所以它是内连接

结合刚才所说的 select 的条件 formA 要去跟 B INNER JION

这两个要做 INNER JION 的条件根据前面的 SQL 机读和人写的顺序要有一个 ON,这个时候 A INNER JION B,因为前面有一个条件 ON 索引可以 JION

2.左外连接

image.png

SELECT<select_list>

FROM TableA A

LEFT JOIN TableB B

ON A.Key = B.Key

左上角是 left join 只要是左就是要左表的全部,简单而言就是 AB 的共有加上A的独有就是全 A

3.右外链接

image.png

SELECT<selecr_list>

FROM TableA A

RIGHT JOIN TableB B

ON A.Key = B.Key

不管是左还是右它们的表格高度要一样不匹配的表要用 NULL 来对等对齐。

4.左连接

image.png

SELECT<select_list>

FROM TableA A

LEFT JOIN TableB B

ON A.Key = B.Key

WHERE B.Key IS NULL

这个叫 A 的独有,A 独占之后就没有 B 的事情,左连接是公有部分加独 A ,只需要把公有部分去掉,只要坐标的全部所以 A 是独占,所以 B 只能是 NULL

5.右链接

image.png

SELECTselect_list>

FROM TableA A

RIGHT JOIN TableB B

ON A.Key = B.Kcy

WHEREA.Key IS NULL

6.全连接

image.png

SELECT<select_list>

FROM TableA A

FULEOUTER JOIN TableB B

ON A.Key = B.Key

AB 为全部的链接。

7.两表独有

image.png

SELECT<selecn_list>

FROM TableA A

FULL OUTER JOIN TableB B

oNA.Key = B.Key

WHEREA.Key IS NULL

OR B.Key IS NULL

AB 为各自的独有。

相关文章
|
iOS开发 MacOS 智能硬件
如何搭建远程控制家中设备的Home Assistant智能家居系统【内网穿透】(下)
如何搭建远程控制家中设备的Home Assistant智能家居系统【内网穿透】
1092 0
|
移动开发 前端开发 小程序
分享46个Bootstrap模板,总有一款适合您
分享46个Bootstrap模板,总有一款适合您
622 1
|
SQL 关系型数据库 数据库连接
python库之—psycopg2
python库之—psycopg2
|
测试技术
优化if-else的11种方案
优雅编码不仅提升程序效率,也增进代码可读性与维护性。通过早返回减少嵌套逻辑、运用三元运算符简化条件判断、采用`switch-case`优化多分支结构、实施策略模式灵活应对不同情境、利用查找表快速定位处理方式、封装函数明确职责划分、应用命令模式解耦操作与调用、引入状态模式管理复杂状态变化、重构条件表达式以增强清晰度、运用断言确保前提条件、及合理异常处理等十大技巧,使代码更加精炼与优雅。
708 159
优化if-else的11种方案
|
9月前
|
机器学习/深度学习 达摩院 PyTorch
GitHub 1.3k 一款能“填色回忆”的神器:DDColor 让老照片鲜活又逼真
DDColor 是阿里达摩院推出的图像自动着色模型,采用双解码器架构与 Colorfulness Loss 技术,实现黑白图到高保真彩色图的智能转换。支持 GPU/CPU 推理,兼容历史照片、动画、游戏截图等多场景,具备高效、真实、多样、易用等特点,广泛适用于影像修复、艺术创作等领域。
1175 24
|
8月前
|
消息中间件 前端开发 JavaScript
如何开发工程项目部管理系统中的WBS分解板块(附架构图+流程图+代码参考)
本文详细解析了如何将工程项目中的WBS(工作分解结构)系统化,通过拆解“大工程”为可执行的小单元,实现责任明确、变更可控、联动管理与风险降低。内容涵盖系统架构、业务流程、数据模型、前后端实现、关键路径算法及最小可跑代码(MVP),并提供数据库设计、接口定义与React前端示例,助力快速落地工程项目管理系统。
|
9月前
|
关系型数据库 MySQL 索引
mysql中的索引和分区
在MySQL中,索引和分区是提高查询效率的关键技术。通过创建合适的索引,可以显著提升数据检索速度。而分区可以作为作为进一步提高查询效率的方式,在较大数据量时通常可以使用这两个结合的方式优化查询速度,所以这边将这两个进行整理,巩固个人知识,同时也希望帮助到有需要的朋友。
239 2
|
算法 搜索推荐 数据库
二分搜索:高效的查找算法
【10月更文挑战第29天】通过对二分搜索的深入研究和应用,我们可以不断挖掘其潜力,为各种复杂问题提供高效的解决方案。相信在未来的科技发展中,二分搜索将继续发挥着重要的作用,为我们的生活和工作带来更多的便利和创新。
271 1
|
Java 编译器 数据库
Java 中的注解(Annotations):代码中的 “元数据” 魔法
Java注解是代码中的“元数据”标签,不直接参与业务逻辑,但在编译或运行时提供重要信息。本文介绍了注解的基础语法、内置注解的应用场景,以及如何自定义注解和结合AOP技术实现方法执行日志记录,展示了注解在提升代码质量、简化开发流程和增强程序功能方面的强大作用。
546 5
|
监控 安全 架构师
JVM 17 调优指南:如何进行JVM调优,JVM调优参数
在这篇文章中,我会详细介绍JVM调优的概念、重要性和具体的JVM调优参数。此外,我将提供12个实用的代码示例,每个示例都会包含JVM调优参数和相应的Java代码。JVM调优是调整和配置Java虚拟机(JVM)的过程,以便最大限度地提高应用程序的性能和效率。这涉及到调整内存设置、选择合适的垃圾收集器,以及配置各种性能参数。
1318 0