​Left join

即左连接,是以左表为基础,根据ON后给出的两表的条件将两表连接起来。结果会将左表所有的查询信息列出,而右表只列出ON后条件与左表满足的部分。左连接全称为左外连接,是外连接的一种。

​Right join

即右连接,是以右表为基础,根据ON后给出的两表的条件将两表连接起来。结果会将右表所有的查询信息列出,而左表只列出ON后条件与右表满足的部分。右连接全称为右外连接,是外连接的一种。​

​Inner join

即内连接,同时将两表作为参考对象,根据ON后给出的两表的条件将两表连接起来。结果则是两表同时满足ON后的条件的部分才会列出。

Cross Join

笛卡尔积在SQL中的实现方式既是交叉连接(Cross Join)。所有连接方式都会先生成临时笛卡尔积表,笛卡尔积是关系代数里的一个概念,表示两个表中的每一行数据任意组合。

集合思维理解

根据上面的栗子,看起来是不是清晰明了多了,而且也更有对比性了。如果还是觉得只是这会儿懂了,但是用起来还是觉得有​点难的话,就下面这种集合思维,大头也是最近才发现,这样想的话就会简单很多了。

​我们有两个表:A和B,那么就分别将其当做一个集合

​那么我们的左右外连接和内连接就相当于变成了这样↓ ↓ ↓

A Left join B -> A (根据返回需求 需连接上B中与A等条件的部分)
A Right join B -> B (根据返回需求 需连接上A中与B等条件的部分)
A Inner join B -> A∩B​ (根据返回需求 需连接上A与B等条件的部分)

SQL——左连接(Left join)右连接(Right join)内连接(Inner join) 笛卡尔积(Cross Join)相关推荐

  1. 表连接查询(多表查询,内连接,左外连接,右外连接)

    什么是表连接:同时对多张表进行查询操作,表与表之间要通过连接条件来连接.一般这个连接条件是主键列是否等于外键列.表连接的主要三种方式是: 连接方式 概念说明 内连接 分为显示内连接和隐式内连接,查询的 ...

  2. Mysql连接查询主要分为三种:内连接、外连接、交叉连接

    Mysql 连接查询主要分为三种:内连接.外连接.交叉连接 内连接 使用比较运算符(包括=.>.<.<>.>=.<=.!>和!<)进行表间的比较操作,查 ...

  3. mysql 多表既有内连接又有外连接_MySQL 多表查询中的内连接和外连接

    一般情况下一个网站的数据库通常会有多张数据表组成,这些数据表分别存储网站不同区域的内容.数据表之间可以用类似 ID 的字段来关联,在查询的时候可以通过一条语句来查询多张表的内容.例如 论坛的数据库,帖 ...

  4. mysql 全表连接_MySQL学习—多表查询(内连接,外链接,全连接)

    一个项目中肯定会有多张数据表,而数据表之间会存在各种各样的关系.这时我们需要的数据,可能不会直接通过一张表全部获取到,这时就需要同时查询多张数据表,得到最后想要的数据. 下面以具体的实例来进行相关知识 ...

  5. 一文完整MySQL连接查询,笛卡尔乘积,内连接外连接交叉连接

    文章目录 笛卡尔乘积 连接查询分类 等值连接 非等值连接 自连接 外连接 交叉连接 连接查询又称为多表查询,当查询的字段来自于多个表时,使用连接查询. 笛卡尔乘积 笛卡尔乘积现象:表1有m行,表2有n ...

  6. 使用笛卡尔积 cross join解决傻傻的问题

    select * from (( select invname from bd_invbasdoc where rownum <=5)cross join (select custname fr ...

  7. SQL的几种连接:内连接、左联接、右连接、全连接、交叉连接

    作者:初行 – 博客园 SQL连接可以分为内连接.外连接.交叉连接. 数据库数据: book表:                                         stu表:       ...

  8. SQL连接的理解和使用(内连接:自然连接等值连接,外连接:左连接右连接全外连接)

    目录 一.连接的介绍 连接是什么? 连接分几种? 条件连接 等值连接 自然连接 二.连接的使用 内连接 INNER JOIN 内连接与等值连接区别 内连接与自然连接区别 外连接 OUTER JOIN ...

  9. SQL的左连接 ,右连接,内连接和全外连接的4者区别

    基本定义: left join (左连接):返回包括左表中的所有记录和右表中连接字段相等的记录. right join (右连接):返回包括右表中的所有记录和左表中连接字段相等的记录. inner j ...

最新文章

  1. 对于读取PDF模板表单,中文无序问题
  2. Foreman安装配置
  3. 1048. Longest String Chain
  4. appium自动化测试环境部署_Android
  5. Python 语言 Hello world
  6. 从零基础入门Tensorflow2.0 ----六、29keras_generator读取 kaggle 10 monkeys数据
  7. 【语音加密】基于matlab语音加密【含Matlab源码 1303期】
  8. G502使用计算机配置,罗技G502鼠标灵敏度如何设置?宏如何设置?
  9. db2 sqlcode
  10. 机器学习算法工程师笔试及面试总结
  11. css 实现一个尖角_css 实现一个带尖角的正方形
  12. Infor SyteLine ERP 安装后中文语言设置
  13. 用html制作四种九九乘法表,JavaScript制作九九乘法表
  14. [转载] 古稀之年被判无期,84 岁再成亿万富翁,一代商业传奇落幕!
  15. 生物识别身份验证:技术的现状和发展趋势
  16. 如何限制在制品?| Kanban
  17. 托福口语_新航道_刘莹_task 3 task5
  18. 判断手机是安卓还是苹果
  19. Flink on Yarn的两种模式及HA
  20. 【C#】【HttpClient】下载网络文件

热门文章

  1. mysql like having_like模糊查询、HAVING和wehere
  2. SpringSecurity权限命名ROLE_问题
  3. NETGEAR路由器登录不上 重新获取ip
  4. linux设置静态ipv6地址,设置静态IPV6地址
  5. Matlab for循环 二维数组赋值时间过长问题
  6. 史上最全“大数据”学习资源整理
  7. php签到表怎么建,PHP如何实现签到功能
  8. 安装青龙面板和docker教程从0开始
  9. 灵雀云第三期(2020-2021)传统行业云原生技术落地调研报告
  10. 【可乐荐书】Python自动化办公应用大全(ChatGPT版):从零开始教编程小白一键搞定烦琐工作