1、SQL92规范、SQL99规范

2、广义笛卡尔积,多表之间没有任何连接条件,得到的结果将是N x M条记录。

3、SQL92中的左外连接、右外连接,连接符有(+或*),放在连接条件那一边就叫做左或右外连接。

4、SQL99的连接查询

1》交叉连接(cross join):就是广义笛卡尔积,不需要任何连接条件。

2》自然连接(natural join):看是没有连接条件,实际以两个表中所有同名列作为连接条件,如果没有同名列则变成了交叉连接。

3》using子句连接:using子句可以指定一列或者多列,用于显式指定两个表中的同名列作为连接条件。两个表必须都要有同名列,否则出错。

4》on子句连接:连接条件。

5、左、右、全连接:left[outer] join、right[outer] join、full[outer] join,通过on子句来指定,既可以是等值连接,又可以是非等值连接。

左连接:左表所有记录都会被查出。

右连接:右表所有记录都会被查出。

全连接:SQL99将全外连接两个表中所有不满足连接条件的记录全部列出。(MySQL没有全连接

6、子查询

子查询就是在查询语句中嵌套另一个查询,子查询支持多层嵌套查询。

将子查询当成数据表的用法,实际是把它作为一个视图使用,也叫行内视图。

如果子查询返回多个值,在where子句中比较,可以使用in、any、all等关键字。

any、all可以与>、>=、<、<、<=、<>、=等运算符结合使用。意思分别是其中任意一个、其中所有。=any相当于in的用法。<any小于最大值。>any大于最小值。<all小于最小值。>all大于最大值。

7、集合运算:交intersect、并union、差minus

能进行集合运算的两个结果集,必须满足:

==>两个结果集包含的数据列数必须相等

==>两个结果集包含的数据列的数据类型必须一致。

1》union并运算

格式:

select 语句  union select 语句

2》minus差运算(MySQL并不支持)

格式:

select 语句  minus select 语句

select c_1,c_2 from xxx
where (c_1,c_2)
not in
(select b_1,b_2 from yyy);

3》intersect交运算(MySQL并不支持)

格式:

select 语句  inserct select 语句

select c_1,c_2 from xxx
join
yyy
on (c_1=b_1 and c_2=b_2);

转载于:https://www.cnblogs.com/ZeroMZ/p/11370893.html

MySQL-第十篇多表连接查询相关推荐

  1. MySQL十表联查快速得到结果_MySQL-第十篇多表连接查询

    1.SQL92规范.SQL99规范 2.广义笛卡尔积,多表之间没有任何连接条件,得到的结果将是N x M条记录. 3.SQL92中的左外连接.右外连接,连接符有(+或*),放在连接条件那一边就叫做左或 ...

  2. 《SQL 入门教程》第07篇 多表连接查询

    <SQL 入门教程>专栏目录 第01篇 SQL 简介 第02篇 查询初体验 第03篇 查询条件 第04篇 结果排序 第05篇 限定结果数量 第06篇 分组与汇总 第07篇 多表连接查询 第 ...

  3. MySQL笔记 07:多表连接查询

    1. 分类 1.1 按年代分类 sql92标准:仅支持内连接 sql99标准[推荐]:支持内连接 + 交叉连接 + 左/右外连接 1.2 按功能分类 内连接:等值连接,非等值连接,自连接 外连接:左外 ...

  4. mysql多表查询连接的种类_MySQL中基本的多表连接查询教程

    一.多表连接类型1. 笛卡尔积(交叉连接) 在MySQL中可以为CROSS JOIN或者省略CROSS即JOIN,或者使用','  如: 由于其返回的结果为被连接的两个数据表的乘积,因此当有WHERE ...

  5. MySQL笔记(四)多表连接查询

    这是我在学习Mysql之路上做的笔记,今天将它粘出来.这一篇主要是Mysql多表连接查询.有错误的欢迎大家指出... 数据库的创建参考我的另一篇博客 https://blog.csdn.net/csd ...

  6. mysql select符合查询_数据库select group by 和having语句 多表连接查询 复合查询

    1.SELECT --group by 子句 group by子句按照指定的列column_name对表数据进行分组 group by 后面跟的列也叫分组特性列 使用group by后,能选择的列   ...

  7. mysql 连接查询两个条件_MySQL之多表查询一 介绍 二 多表连接查询 三 符合条件连接查询 四 子查询 五 综合练习...

    一 介绍 本节主题 多表连接查询 复合条件连接查询 子查询 首先说一下,我们写项目一般都会建一个数据库,那数据库里面是不是存了好多张表啊,不可能把所有的数据都放到一张表里面,肯定要分表来存数据,这样节 ...

  8. 二、MySQL连接查询学习笔记(多表连接查询:内连接,外连接,交叉连接详解)

    MySQL连接查询(多表连接查询:内连接,外连接,交叉连接详解) 6:多表连接查询 笛卡尔乘积:如果连接条件省略或无效则会出现 解决办法:添加上连接条件 连接查询的分类: 1.按年代分类:1)sql ...

  9. [Mysql] 多表连接查询

    在之前的学习当中,我们查询使用的都是一张表,而在实际的数据分析业务中,经常会使用多张表.将多张表连接起来就是多表连接(从一个表扩展为两个表,也可以更多个表) 多表连接查询 当查询结果的列来源于多张表时 ...

  10. 明了的 —— Mysql 多表连接查询

    Mysql 多表连接查询 每博一文案 看过这样一句话,我一直在寻找一个人能,在寒冷的日子里 牵起一双温暖的手,踏实向前走,但若是找了很久都没有寻到, 我便不再相信这个世界有这样一个人的存在, 当一个人 ...

最新文章

  1. 前沿|8种面部表情实时追踪,你的喜怒哀乐全被AI看穿了
  2. SAP 库存相关表格
  3. socket python 收 发 队列 线程_对于Python中socket.listen()与多线程结合的困惑?
  4. LeetCode 16 3Sum Closest(最接近的3个数的和)
  5. centos mysql 互为主从_centos7 mysql互为主从+keepalived
  6. poj2778DNA Sequence (AC自动机+矩阵快速幂)
  7. 多线程-线程间通信-多生产者多消费者示例
  8. 从零开始学MATLAB(一)MATLAB基础知识
  9. 抢红包案例分析以及代码实现(二)
  10. 关于KEIL5最新版没有ATMEL(含89C51芯片)的情况
  11. 玩法专利获批,发布4年《Beat Saber》为何持续火爆
  12. 如何彻底的卸载干净Oracle 11g
  13. 软件功能测试报告都包含哪些内容,测试报告如何获取呢
  14. python 简单TCP通信实例 TCP断线自动重连 客户端服务端没有启动顺序
  15. 为什么系统测试超出软件工程范围测试,软件工程系统测试
  16. sync是同步还是非同步_1588v2,是怎样实现时钟同步的?
  17. 认识web和web标准
  18. 电商大数据项目-推荐系统实战之推荐算法(三)
  19. 【HTML CSS JS 实现QQ2009界面——附源代码】
  20. ChatGPT有同理心吗?

热门文章

  1. 在MAC系统上,重新编译了一次OpenJDK8
  2. 编程基本功:正常运行的代码,你看明白能做什么?不如解决几个简单BUG
  3. 员工离职时,主管应该问相关竞业的两个问题
  4. 订个票,显示吾是何等的脑残
  5. oracle ebs采购申请接口表,Oracle EBS BOM接口表操作.doc
  6. C++ lock 加锁,解锁
  7. docker registry push 覆盖_Maven一键部署Springboot到Docker仓库,为自动化做准备
  8. android canvas_Android实现自定义阴影效果
  9. 电脑表格制作教程入门_微信销售小程序入门教程:制作+营销
  10. 右键新建文件夹_教你修改Windows万年不变的黄色文件夹,让文件也不枯燥