1. Select-union(联合查询)

union用于把来自许多SELECT语句的结果组合到一个结果集合中。
用法:
SELECT ...UNION [ALL | DISTINCT]SELECT ...[UNION [ALL | DISTINCT]SELECT ...]
 
2. 引入Select-union(联合查询)的案例:

(1)首先查询出所有teacher_class列中所有的记录,如下:

 
 
 
(2)按照字段t_name和days,查询出所有带过php0115班的老师,如下:
 
 
(3)在上面(2)查询出来的结果基础上,按照days进行排序检索,如下:
 
 
 
(4)在(3)查询结果的基础上,检索出days最大的记录,如下:
 
 
(5)如果我们想查询出php0228班的授课天数(days最大)老师记录,就需要上面查询命令的班级号就行了,如下:
select t_name,days from teacher_class where c_name='php0228' order by days desc limit 1;
如此一来,如果数据库内容很多,我们可能要重复很多这样的业务逻辑,该怎么优化呢?
 
 
3. Select-union(联合查询)的案例:
Select-union(联合查询):把多条select语句的结果,合并在一起。
使用uinion关键字,联合两个select语句即可。
 
  现在说明我们的需求:获得2个班代课最后的老师。
 
语句1:select t_name,days from teacher_class where c_name='php0115' order by days desc limit 1;
语句2:select t_name,days from teacher_class where c_name='php0228' order by days desc limit 1;
使用union关键字联合上面两个select语句即可。
(1)语句1 和 语句2,查询结果如下:
 
 
(2)使用union关键字联合上面两个select语句,如下:
(select t_name,days from teacher_class where c_name='php0115' order by days desc limit 1)union(select t_name,days from teacher_class where c_name='php0228' order by days desc limit 1

);
 
 
 
 

MySQL(16):Select-union(联合查询)的更多相关文章

  1. Mybatis中@select注解联合查询

    前言 在项目中经常会使用到一些简单的联合查询获取对应的数据信息,我们常规都是会根据对应的mapper接口写对应的mapper.xml的来通过对应的业务方法来调用获取,针对这一点本人感觉有点繁琐,就对@ ...

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

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

  3. 理解mysql执行多表联合查询

    阅读目录 一:inner join(内连接) 二:left join(左连接) 三:right join(右连接) 四:cross join(交叉连接) 五:union操作 六:node+mysql ...

  4. MySQL之外键、联合查询、子查询

    外键(foreign key): 外面的键(键不在自己表中),如果一张表中有一个字段(非主键)指向另外一张表的主键,那么将该字段称之为外键. 外键可以在创建表的时候或者创建表之后增加(但是要考虑数据的 ...

  5. MySQL手注之联合查询注入

    了解联合查询注入之前,先要了解一下什么是union? union是用于合并两个sql查询结果的语句. 要使用union 必须有相同的列数  必须有两条以上的select语句组成  列的数据类型必须兼容 ...

  6. Node.js的mysql执行多表联合查询

    数据库(test)中的表结构(admin.user) //执行多表结合查询 var mysql = require('mysql'); var connection = mysql.createCon ...

  7. MYsql系统函数和联合查询

    函数是SQL里的关键字,用于对字段里的数据进行操作.函数是一个命令,通常与字段名称或者是表达式联合使用,处理输入的数据并产生结果 常用函数 控制函数 字符串函数 数学函数 日期时间函数 汇总函数 CA ...

  8. MySQL两个表联合查询并按时间排序

    有一张资金记录表,一张金币记录表,想以时间为单位,降序合并排列他们之间的信息,查询SQL如下: select * from (select * from t_money_logs union sele ...

  9. MySQL的select多表查询

    select 语句: select 语句一般用法为: select 字段名 from tb_name where 条件 ; select 查询语句类型一般分为三种:  单表查询,多表查询,子查询 最简 ...

  10. VBA+SQL transform pivot union联合查询的基础应用

    Sub 项目状态查询() '如果“项目状态”是未转运营那么实施状态是不能选择的,因为还没有实施.'如果“项目状态”选择状态后,那么项目名称里面只显示该状态的项目名称.如果“项目状态”选择的不是未转运营 ...

随机推荐

  1. POJ 1017 Packets

    题意:有一些1×1, 2×2, 3×3, 4×4, 5×5, 6×6的货物,每个货物高度为h,把货物打包,每个包裹里可以装6×6×h,问最少几个包裹. 解法:6×6的直接放进去,5×5的空隙可以用1× ...

  2. JMX学习一

    JMX        即 Java Management Extensions   Java管理扩展MBean   即 managed beans                         被管 ...

  3. 求大于整数m且紧靠m的k个素数 及 判断一个数是否为素数的方法

    题目: 请编写一个函数void fun(int m,int k ,int xx[]),该函数的功能是:将大于整数m且紧靠m的k个素数存入xx所指的数组中. 例如,若输入:17,5,则应输出:19,23 ...

  4. 【译】 AWK教程指南 附录E-正则表达式

    为什么要使用正则表达式 UNIX 中提供了许多 指令 和 tools,它们具有在文件中 查找(Search)字串或替换(Replace)字串 的功能.像 grep, vi , sed, awk,... ...

  5. 看雪 安卓 dex文件

    http://bbs.pediy.com/showthread.php?t=177114

  6. 各类JavaScript插件

    ZeroClipboard复制内容到剪切板(支持IE.FF.Chrome) ZeroClipboard.js ZeroClipboard.swf hotkeys键盘监听 jquery.hotkeys. ...

  7. 2015长春 HDU 5531 Rebuild

    题意:n个顶点组成的多边形能否形成正多边形? #include <cstdio> #include <cstring> #include <cmath> #incl ...

  8. hadoop cdh 4.5的安装配置

    春节前用的shark,是从github下载的源码,自己编译.shark的master源码仅支持hive 0.9,支持hive 0.11的shark只是个分支,不稳定,官方没有发布release版,在使 ...

  9. POJ3468--A Simple Problem with Integers(Splay Tree)

    虽然有点难,但是这套题都挂了一个月了啊喂…… 网上模板好多……最后还是抄了kuangbin聚聚的,毕竟好多模板都是抄他的,比较习惯…… POJ 3468 题意:给n个数,两种操作,区间整体加一个数,或 ...

  10. JAVA中关于Map的九大问题

    通常来说,Map是一个由键值对组成的数据结构,且在集合中每个键是唯一的.下面就以K和V来代表键和值,来说明一下java中关于Map的九大问题. 0.将Map转换为List类型 在java中Map接口提 ...