先说什么是交叉连接: 交叉连接又叫笛卡尔积,它是指不使用任何条件,直接将一个表的所有记录和另一个表中的所有记录一一匹配。

笛卡尔积又叫笛卡尔乘积,是由一个笛卡尔人提出来的,简单地来说就是两个集合相乘的结果。直观的说 集合A{a1,a2,a3} 集合B{b1,b2} 他们的笛卡尔积就是A*B ={(a1,b1),(a1,b2),(a2,b1),(a2,b2),(a3,b1),(a3,b2)}

例子:
--表stu id name 
1, Jack 
2, Tom 
3, Kity 
4, nono 
--表exam id grade 
1, 56 
2, 76 
11, 89

内连接:是只有条件的交叉连接,根据某个条件筛选出符合条件的记录,不符合条件的记录不会出现在结果集中,即内连接只连接匹配的行。
内连接例子:(只显示两表id匹配)
    select stu.id,exam.id,stu.name, exam.grade from stu inner join exam on stu.id=exam.id 
结果:1 1 Jack 56 
     2 2 Tom 76

外连接:其结果集中不仅包含符合连接条件的行,而且还会包括左表、右表或两个表中的所有数据行,这三种情况依次称之为左外连接,右外连接,和全外连接。

左外连接,也称左连接,左表为主表,左表中的所有记录都会出现在结果集中,对于那些在右表中并没有匹配的记录,仍然要显示,右边对应的那些字段值以NULL来填充。
左外连接例子:(显示join左边的所有数据,exam只有两条记录,所以stu.id,grade都用Null来表示)
    select stu.id,exam.id,stu.name, exam.grade from stu left join exam on stu.id=exam.id
结果: 1 1 Jack 56 
2 2 Tom 76 
3 NULL Kity NULL 
4 NULL nono NULL

右外连接,也称右连接,右表为主表,右表中的所有记录都会出现在结果集中。左连接和右连接可以互换,MySQL目前还不支持全外连接。
右外连接例子:(与左外连接相反,显示join右边表的所有数据)
select stu.id,exam.id,stu.name, exam.grade from stu right join exam on stu.id=exam.id 
 结果:1 1 Jack 56 
2 2 Tom 76 
NULL 11 NULL 89

解释MySQL外连接、内连接与自连接的区别相关推荐

  1. SQL语法 自然连接 外连接 内连接

    文章目录 笛卡尔积 连接 内连接 自连接 自然连接 外连接 左外连接 右外连接 区分连接 自然连接 内连接 内连接.外连接 on 和 where 条件过滤的区别 参考链接 笛卡尔积 结果集数目为多个表 ...

  2. 简单的mysql左链接_简单谈谈mysql左连接内连接

    前言 最近忙着开发x省冷链追溯系统,天天干到晚上十一点多才回到家,周末也加班,没啥时间写博客,闲下来再好好写写 业务: sql语句统计出入库数据. 问题:只统计了X端入库单. 原因: 没有发现X端的数 ...

  3. MySQL什么用于左连接_简单谈谈mysql左连接内连接

    前言 最近忙着开发x省冷链追溯系统,天天干到晚上十一点多才回到家,周末也加班,没啥时间写博客,闲下来再好好写写 业务: sql语句统计出入库数据. 问题:只统计了X端入库单. 原因: 没有发现X端的数 ...

  4. MySQL数据库的内连接,左外连接和右外连接查询

    1.首先谈一谈数据库的连接查询有什么作用? 简单的说就是在实际生活中,当我们查询某些数据的时候,一张表不可能为我们提供足够多的数据,其次在数据库的设计的时候,考虑到表的结构和复杂性,会设计多张分类表, ...

  5. MySQL中的内连接和外连接

    一.MySQL内连接(INNER JOIN) 内连接,又称为等值连接,是最常见的连接类型.它根据两个(或多个)表中具有相同列值的行来创建一个新的结果表.在内连接中,只有通过连接条件匹配的行才会被包含在 ...

  6. MySql连接——内连接、外连接(左连接、右连接、全连接)

    1. 内联接 使用比较运算符根据每个表共有的列的值匹配两个表中的行 2. 外联接 1)左联接 left join /left outer join 右表无匹配的时候,行为null,左表的行保留 2)右 ...

  7. MySQL--多表连接(内连接、外连接、交叉连接--笛卡尔积)

    @toc      更多关于数据库知识请加关注哟~~.若需联系博主请私信或者加博主联系方式:      QQ:3327908431      微信:ZDSL1542334210 前言:MySQL一系列 ...

  8. Mysql中外连接,内连接,左连接,右连接的区别

    养成习惯,先赞后看!!! 目录 1. 前言 2. 外连接 2.1左连接 2.2右连接 3. 内连接 1. 前言 相信大家一定都做过多表的连表查询,并且这其中的查询方式也比较多样. 可能主要就是下面这几 ...

  9. oracle内连接使用,Oracle中的联合查询-自然连接/外连接/内连接

    自然连接 select * from r1 natural [inner] join r2 natural [inner] join r3 where P; select A1,A2 from r1 ...

最新文章

  1. 阿里云nginx配置ssl证书
  2. Windows PE 第十二章 PE变形技术
  3. git概念篇(remote,base,local)的含义
  4. matplotlib各个部分
  5. c语言二进制long,C语言填空题 把从键盘上输入的十进制数(long型)以二进制~十六进制任一制式的形式输出#include main(){...
  6. 深入浅出SQL(2)——select、update…
  7. k8s install
  8. 大学计算机科学不会编码,华中科技大学人员编号编码管理办法
  9. Web前端Javascript笔记(8)Ajax前后端交互
  10. python0不能做除数、怎么解决_为什么不能用 0 做除数?
  11. BZOJ 1911: [Apio2010]特别行动队
  12. 基于Lua语言的wireshark插件编写
  13. 揭示Win32 API拦截细节/API hooking revealed (2)
  14. 2021-01-03
  15. 自动量化炒股软件是什么?
  16. 新王诞生!ACP世界大赛中国区总决赛超燃收官!
  17. opencv-python数字图像处理学习7:提取一副彩色图像中红色,用HIS模型处理,RGB模型对比显示
  18. 华为IdeaHub的商业市场启示“路”
  19. 内存寻址:逻辑地址到物理地址的转化
  20. 离散KL变换原理、实例以及matlab实现

热门文章

  1. 送几款混互联网江湖必备的利器
  2. 微信小程序常用api使用
  3. 端口被占用?两步解决端口占用问题
  4. html5 点一个按钮,播放一个相应的视频
  5. CAD只让图纸上的圆显示线宽(网页版)
  6. 移动web资源整理[转]
  7. 虹科分享|USB设备安全管理平台|USB软件加密不可接受的五个原因
  8. 商标注册查询入口官网
  9. 关于动物的几个网站。。。
  10. linux 内核 ipv6 路由,Linux模拟IPV6双栈路由器实现方案