[1] 示例数据

  用两个表(a_table、b_table),关联字段a_table.a_id和b_table.b_id来演示一下MySQL的内连接、外连接( 左(外)连接、右(外)连接)。

  a_table:

  b_table:

[2] 内连接(取两表交集)

  查询语句:

select * from a_table a inner join b_table b on a.a_id = b.b_id;

  查询结果:

[3] 左连接(先查左边表所有数据,然后按on条件拼接)

  查询语句:

select * from a_table a left join b_table b on a.a_id = b.b_id;

  查询结果:

[4] 右连接(先查右边表所有数据,然后按on条件拼接)

  查询语句:

select * from a_table a right join b_table b on a.a_id = b.b_id;

  查询结果:

[5] 总结

  如果是左连接,就先把左边表的所有数据都查出来,然后以on后面的条件去右边表中搜索,匹配的就拼接到刚刚查询出的数据上,没有匹配的,就为NULL;

  如果是右连接,就先把右边表的所有数据都查出来,然后以on后面的条件去左边表中搜索,匹配的就拼接到刚刚查询出的数据上,没有匹配的,就为NULL;

【MySQL】(图解)快速理解内连接、外连接、左连接、右连接相关推荐

  1. 数据库内、外、左、右连接详解

    写在前面: 数据库连接操作非常重要,明确连接操作有助于更好地掌握SQL语句查询操作. 数据库连表方式: 内连接 :inner join 外连接 :outer join 左外连接 :left outer ...

  2. SQL——左连接(Left join)右连接(Right join)内连接(Inner join) 笛卡尔积(Cross Join)

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

  3. linq to entity 左联接 右连接 以及内连接写法的区别(转)

    linq to entity 左连接 右连接 以及内连接写法的区别  还有就是用lambda表达式怎么写,那个效法效率高些? [解决办法] 左连右连还是内连这个其实你不需要关心.只需要根据实体的映射关 ...

  4. oracle基础|oracle多表查询用法|什么是等值连接(inner join)|什么是不等值连接(between)|什么是左连接(left join)|什么是右连接(right join)

    目录 一.多表查询 概念 基本语法 笛卡尔积 连接查询分类

  5. SQL中的各种连接的区别总结(内连接,左连接,左外连接,右连接,右外连接,全连接,全外连接)

    在数据库中建立两张表方便大家理解,teacher和student表(student表中的teacherid字段是对应teacher表中的ID,举个例子张三的老师就是李四,没有teacherid就是这个 ...

  6. 实例讲解内连接、左连接、右连接、交叉连接、外连接以及全连接

    目录 示例表: 1.内连接-inner: 实例1:内连接表a和表b 实例2:内连接表a和表c 实例3:内连接表a和表b,使用">"号 实例4:内连接表a和表b,使用" ...

  7. oracle内与外连接,Oracle (内连接)与(外连接)区别

    表stu id name 1, Jack 2, Tom 3, Kity 4, nono 表exam id grade 1, 56 2, 76 11, 89 内连接(显示两表匹配的id) select ...

  8. mysql左连接含义_学习笔记-数据库左连接,右连接意义及区别

    1.左连接,右连接等的意义及区别: 1)笛卡尔积:CROSS JOIN 要理解各种JOIN首先要理解笛卡尔积.笛卡尔积就是将A表的每一条记录与B表的每一条记录强行拼在一起. 所以,如果A表有n条记录, ...

  9. sql内连接、左连接、右连接以及全连接查询

    Mysql 一,内连接.左连接.右连接以及全连接查询 一.内连接查询 inner join 关键字:inner join on 语句:select * from a_table a inner joi ...

最新文章

  1. 《Storm实时数据处理》一2.6 统计与持久化日志统计信息
  2. iOS 查询数组中的对象
  3. 适用于System Center 2016所需前期准备工作
  4. 初次使用Windbg调试简单C++程序
  5. KLayout 软件使用崩溃
  6. java快排原理_Java数据结构与算法——快速排序
  7. 烟台大学计算机与控制工程学院研究生导师,烟台大学计算机与控制工程学院欢迎大家...
  8. Skywalking-07:OAL原理——解释器实现
  9. 题164.pta数据结构题集-04-树7 二叉搜索树的操作集 (30 分)
  10. JDK7及早期版本Java HotSpot 虚拟机配置选项
  11. 事物的开始和结束命令分别是什么_5. 详解Redis中的事务
  12. csv是什么意思中文_CSV 文件是什么意思?
  13. 安卓ui xml_创建声明性XML UI语言
  14. 嵌入式系统之-小米路由器3G v1
  15. c/c++判断数组中元素的个数
  16. 170虚拟号码的正则表达式
  17. Revit二次开发——扩展存储
  18. 苹果试玩换个新id行不_【图】- 日照市苹果app换个id重复刷试玩能不能 - 昆山玉山其他服务 - 昆山百姓网...
  19. Java对象关系映射(ORM)
  20. 1-practice之Python爬取度娘页面

热门文章

  1. ‘vue-cli-service‘ 不是内部或外部命令,也不是可运行的程序
  2. SpringBoot mybatis 输出SQL语句到控制台
  3. 【问题收录】在ubuntu14.04 64位下运行jd-gui
  4. mysql cluster mysql 节点无法关闭_Mysql Cluster 非root用户启动ndbd节点报错
  5. ubuntu 恢复apt_apt-clone:备份已安装的软件包并在新的 Ubuntu 系统上恢复它们
  6. pathview包绘制富集的kegg图
  7. Cell子刊:16s分析之FishTaco分析
  8. go监听mysql事件更新,有没有一种方法可以“监听”数据库事件并实时更新页面?...
  9. R语言直方图(histogram)绘制实战
  10. R语言ggplot2可视化:使用R原生plot函数为指定曲线下面的区域着色、ggplot2可视化在曲线的特定下方添加分割线、ggplot2为指定曲线下面的区域着色