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);

MySQL-第十篇多表连接查询的更多相关文章

  1. mysql自关联和多表连接查询

    自关联操作         多表连接查询  inner  join 内查询   left  join  左查询   right  join  右查询                          ...

  2. MySQL中基本的多表连接查询教程

    一.多表连接类型1. 笛卡尔积(交叉连接) 在MySQL中可以为CROSS JOIN或者省略CROSS即JOIN,或者使用','  如: SELECT * FROM table1 CROSS JOIN ...

  3. mysql(4)—— 表连接查询与where后使用子查询的性能分析。

    子查询就是在一条查询语句中还有其它的查询语句,主查询得到的结果依赖于子查询的结果. 子查询的子语句可以在一条sql语句的FROM,JOIN,和WHERE后面,本文主要针对在WHERE后面使用子查询与表 ...

  4. MySQL之多表查询一 介绍 二 多表连接查询 三 符合条件连接查询 四 子查询 五 综合练习

    MySQL之多表查询 阅读目录 一 介绍 二 多表连接查询 三 符合条件连接查询 四 子查询 五 综合练习 一 介绍 本节主题 多表连接查询 复合条件连接查询 子查询 首先说一下,我们写项目一般都会建 ...

  5. Mysql表连接查询

    原文地址: https://www.cnblogs.com/qiuqiuqiu/p/6442791.html 1.内联接(典型的联接运算,使用像 = 或 <> 之类的比较运算符).包括相等 ...

  6. oracle(sql)基础篇系列(二)——多表连接查询、子查询、视图

        多表连接查询 内连接(inner join) 目的:将多张表中能通过链接谓词或者链接运算符连接起来的数据查询出来. 等值连接(join...on(...=...)) --选出雇员的名字和雇员所 ...

  7. oracle(sql)基础篇系列(二)——多表连接查询、子查询、视图

    多表连接查询 内连接(inner join) 目的:将多张表中能通过链接谓词或者链接运算符连接起来的数据查询出来. 等值连接(join...on(...=...)) --选出雇员的名字和雇员所在的部门 ...

  8. MySQL数据库:多表连接查询

    多表连接查询 注意:使用连接技术建议将表经行重命名! # explain 检索连接是否达标 # 内连接 # 语法1 from 表1 inner join 表2 on 主键字段=外键字段 [where ...

  9. mysql--多表连接查询

    一.多表连接查询 SELECT 字段列表 FROM 表1 INNER|LEFT|RIGHT JOIN 表2 ON 表1.字段 = 表2.字段; 1.交叉连接:不适用任何匹配条件.生成笛卡尔积 sele ...

随机推荐

  1. [CF286C] Main Sequence

    问题描述 定义幸运数列: 空数列是幸运数列 如果 S 是幸运数列,那么 {r, S, -r} 也是幸运数列 (r > 0) 如果 S 和 T 都是幸运数列,那么 {S, T} 也是幸运数列 给定 ...

  2. RN组件的生命周期

    来自:http://www.devio.org/tags/#React%20Native

  3. Java——static

    [static] <1>static成员变量存储在内存data segment区域,不是存放在堆中. <2>静态成员变量属于整个类,任何一个对象都可以访问这个值:如果没有对象, ...

  4. codevs 4064 组合 x

    很久之前发过啦~不过删掉了...再发一下 4064 组合 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Description 组合就 ...

  5. Histograms of Sparse Codes for Object Detection用于目标检测的稀疏码直方图

    AbstractObject detection has seen huge progress in recent years, much thanks to the heavily-engineer ...

  6. 拆系数$FFT$($4$遍$DFT$)

    #include <iostream> #include <cstdio> #include <cstdlib> #include <cstring> ...

  7. [CF46D]Parking Lot

    题目:Parking Lot 传送门:http://codeforces.com/problemset/problem/46/D 分析: 做法一: 1)这题和Hotel那题一样,也可以看做是求区间空位 ...

  8. navigator组件(相当于a标签)

    navigator组件:页面链接: navigator组件属性: target:类型 字符串 在哪个目标上发生跳转,默认当前小程序 属性值:self 当前小程序 miniProgram 其他小程序 u ...

  9. ubuntu安装和使用git

    1.apt-get安装 apt-get install git 2.全局配置 git config --global user.name "yourname" git config ...

  10. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_01 File类_7_File类创建删除功能的方法

    createNewFile() createNewFile抛出了异常 抛出了一个IO异常 所有我们调用方法的时候必须处理异常 throws这个异常 返回结果为true 最终创建好的文件 再次执行代码. ...