连接查询

连接语法的基本形式

from 表1  [连接方式]  join 表2  [on 连接条件];

交叉连接

语法:

from  表1  [cross]  join  表2  ;      //可见交叉连接只是没有on条件而已。

cross这个词也可以省略,还可以使用inner这个词代替

内连接:

语法:

from  表1  [inner]  join  表2  on  表1.字段1=表2.字段2;左[外]连接:

形式:

from  表1  left  [outer]  join   表2   on  连接条件。

左[外]连接:

形式:

from  表1  left  [outer]  join   表2   on  连接条件。

说明:

1,这里,left是关键字。

2,连接条件跟内连接一样。

3,含义是:内连接的结果基础上,加上左边表中所有不符合连接条件的数据,相应放右边表的字段的位置就自动补为“null”值。

右[外]连接:

形式:

from  表1  right  [outer]  join   表2   on  连接条件。

说明:

1,这里,right是关键字。

2,连接条件跟内连接一样。

3,含义是:在内连接的结果基础上,加上右边表中所有不符合连接条件的数据,相应本应放左边表的字段的位置就自动补为“null”值。

全[外]连接

形式:

from  表1  full  [outer]  join  表2  on  连接条件;

说明:

1,含义:其实是左右连接的“并集”(消除重复项),即内连接的结果,加上左表中不满足条件的所有行(右边对应补null),再加上,右表中不满足条件的所有行(左边对应补null)。

2,mysql中其实不认识全[外]连接语法,即mysql这个软件本身不支持全连接的语法。

3,此概念在其他数据库有的存在,了解就可以。

什么叫子查询

in的基本语法形式为:

where  操作数  in (值1,值2, ....)

则in子查询就是:

where  操作数  in ( 列子查询 );

含义:

表示该操作数(字段值) 等于 该子查询的其中任意一个只,就算满足条件。

联合查询

联合查询的关键字是: union

联合查询就是将两个select语句的查询结果“层叠”到一起成为一个“大结果”。

两个查询结果的能够进行“联合”的先觉条件是:结果字段数相等。

select 语句1

union  [ALL | DISTINCT]

select 语句2;

说明:

1,两个select语句的输出段(结果字段)一样数目一样,应用中通常类型一样才有意义。

2,结果集中的字段以第一个select语句的字段为准。

3,第一个select语句的字段可以做别名,但如果做别名,则后续的where,group,order等子句应该用该别名。

4,联合查询默认是会消除重复项的(DISTINCT),要想不消除,则必须明确些“ALL”。

5,如果要对整个联合结果进行排序或limit,则应该对各自的select语句加括号:

(select 语句1)

union

(select 语句2)

order  by .....  limit ....;

Mysql连接查询、子查询、联合查询 整理的更多相关文章

  1. Mysql的查询语句(联合查询、连接查询、子查询等)

    Mysql的各个查询语句(联合查询.连接查询.子查询等) 一.联合查询 关键字:union 语法形式 select语句1 union[union选项] select 语句2 union[union选项 ...

  2. mysql学习之路_联合查询与子查询

    联合查询 联合查询:将多次查询(多条select语句)在记录上进行拼接(字段不会增加). 语法:多条select语句构成,每条select语句获取的字段必须严格一致(但是字段类型无关). Select ...

  3. 你了解MySQL中的多表联合查询吗?

    前言: 多表联合查询,其实就是我们MySQL中的join语句,经常会看到有人说join非常影响性能,不建议使用,你知道这是为什么呢?我们究竟可不可以用呢? 测试数据: CREATE TABLE `t2 ...

  4. MySQL开发——【联合查询、多表连接、子查询】

    联合查询 所谓的联合查询就是将满足条件的结果进行拼接在同一张表中. 基本语法: select */字段 from 数据表1 union [all | distinct] select */字段 fro ...

  5. MySQL连接查询(多表查询)

    基本含义 连接就是指两个或两个以上的表(数据源) “连接起来成为一个数据源”. 连接语法的基本形式:from 表1 [连接方式] join 表2 [on 连接条件]; 连接的结果可以当做一个“表”来使 ...

  6. mysql中联合查询

    联合查询union 一个翻译问题的解释: 在mysql的手册中,将连接查询(Join)翻译为联合查询: 而联合查询(union),没有明确翻译. 但: 在通常的书籍或文章中,join被翻译为“连接”查 ...

  7. MySQL数据查询之多表查询

    多表查询 多表联合查询 #创建部门 CREATE TABLE IF NOT EXISTS dept ( did int not null auto_increment PRIMARY KEY, dna ...

  8. [办公自动化] 再读《让EXCEL飞》(从excel导入access数据时,union联合查询,数据源中没有包含可见的表格)

    一年多以前就买了@Mrexcel的<让excel飞>这本书.整体思路是利用access结合excel,大幅度提高数据分析效率. 最近又拿出来看了看.第十五章,比高级筛选更“高级”,P241 ...

  9. thinkphp5---join联合查询

    使用thinkphp3.2进行联合查询,join联合查询: $list = M('document as d') ->join('tp_admin_column as c on d.cid = ...

随机推荐

  1. LVS (Linux Virtual Server) 负载均衡

    [大型网站技术实践]初级篇:借助LVS+Keepalived实现负载均衡   一.负载均衡:必不可少的基础手段 1.1 找更多的牛来拉车吧 当前大多数的互联网系统都使用了服务器集群技术,集群即将相同服 ...

  2. hdu-4300(kmp或者拓展kmp)

    题意:乱七八糟说了一大堆,就是先给你一个长度26的字符串,对应了abcd....xyz,这是一个密码表.然后给你一个字符串,这个字符串是不完整的(完整的应该是前半部分是加密的,后半部分是解密了的),然 ...

  3. Java常用调试技巧(转)

    调试不仅可以查找到应用程序缺陷所在,还可以解决缺陷.对于Java程序员来说,他们不仅要学会如何在Eclipse里面开发像样的程序,更需要学会如何调试程序.本文介绍了Java程序员必知的10个调试技巧, ...

  4. 解决Error:com.intellij.util.indexing.StorageException

    删除 C:\Users\Nihaorz\.IntelliJIdea2017.1\system\compile-server 目录下的所有内容即可

  5. Go语言流程控制

    1.条件语句 几个注意点和C#不一样的. { } else { } ① 条件语句不需要使用括号将条件包含起来 a<5 ,C#必须有() ②无论语句体内有几条语句,花括号{}都是必须存在的:C#如 ...

  6. HDU1800 字典树写法

    题意:高级魔法师可以教低级魔法师 魔法扫把技能,同时教会了的低级魔法师又可以教比他更低级是,是传递的关系 同时如果教会了的话,他们可以同时坐一个扫把 问最少需要多少个扫把 思路:就是判断相同的数字最多 ...

  7. python学习日记(流程控制习题)

    请输出1-2+3...+99除88以外的和 i = 1 sum = 0 while i <= 99: if i == 88: i = i + 1 continue else: if i%2 == ...

  8. 【JVM】查看JVM加载的类及类加载器的方法

    查看JVM加载了哪些类 java -verbose[:class|gc|jni] 在输出设备上显示虚拟机运行信息. java -verbose:class 在程序运行的时候有多少类被加载!你可以用ve ...

  9. 【Luogu4707】重返现世(min-max容斥)

    [Luogu4707]重返现世(min-max容斥) 题面 洛谷 求全集的\(k-max\)的期望 题解 \(min-max\)容斥的证明不难,只需要把所有元素排序之后考虑组合数的贡献,容斥系数先设出 ...

  10. 通过Nifi 导入csv文件到HDFS

    1. 拖入一个GetHttp 的processor     右健选择 configure  -> properties , 设置 url 和 filename    url : http://s ...