若无特殊说明,oracle与mysql均适用

  • 使用场景

union、union all关键字用户将两个select查询结果集合并成一个结果集,例如:一个旧系统使用a表,同样的信息但是新系统使用了b表,这时候可以使用union或者union all关键字将旧系统和新系统的数据合并显示。

  • union和union all的相同点和不同点

  1. 相同点:都是对两个查询结果集进行并集操作。
  2. 不同点:union会合并重复的行,而union all则不会,所谓重复行即两行数据所有的查询字段都相同。
  3. union all先跟左边的查询结果,然后再跟右边的查询结果。在oracle中union是全量排序,所谓全量排序即先按照第一个字段排序,然后按照第二个字段排序,依次类推。而在mysql中union先跟左边的查询结果,然后再跟右边的查询结果
  • 使用需要注意点

  1. 如果不想使用默认的全量排序,可以在sql语句末尾使用order by+数字(排序字段的位置),mysql还可以使用order by+字段的方式
  2. 关键字两边查询的字段要完全一样
  • 扩展补充(mysql不支持)

  1. Intersect:取两个结果集的交集,和并重复行。
  2. Minus:取两个结果集的差集,即在第一个查询结果中包含,并且在第二个查询结果中不包含的数据,合并重复行。
  • DEMO

create table student_a(
id number,
name varchar2(100));create table student_b(
id number,
name varchar2(100));insert into STUDENT_A (id, name)
values (1, '张三');
insert into STUDENT_A (id, name)
values (2, '李四');
insert into STUDENT_A (id, name)
values (1, '张三');
commit;insert into STUDENT_B (id, name)
values (2, '李四');
insert into STUDENT_B (id, name)
values (3, '赵六');
commit;select id,name from student_a
union
select id,name from student_b ;select id,name from student_a
union all
select id,name from student_b ;select id,name from student_a
Intersect
select id,name from student_b ;select id,name from student_a
Minus
select id,name from student_b ;select id,name from student_a
union all
select id,name from student_b order by 1;

Oracle/mysql联合查询union、union all相关推荐

  1. mysql联合查询(UNION)

    mysql联合查询(UNION) 下面我就直接po截图和代码 #联合查询 /* union 联合 合并:将多条查询语句的结果合并成一个结果语法: 查询语句1 union 查询语句2 union ... ...

  2. mysql联合查询注入防护,SQL注入之BypassWaf

    0x00 前言 无论是在CTF比赛中还是在现实项目中,都会遇到各种各样的waf,没有绝对安全的系统,仔细的研究总会发现被"漏掉"的地方. 最近在研究过waf的技巧,期间还是很有趣的 ...

  3. MySQL联合查询语法内联、左联、右联、全联

    MySQL联合查询效率较高,以下例子来说明联合查询(内联.左联.右联.全联)的好处: T1表结构(用户id,用户名,密码)    userid   username  password 1   jac ...

  4. mysql 联合查询后排序_MySQL的查询(联合查询,查询排序,正则表达式)

    MySQL的查询(联合查询,查询排序,正则表达式) MySQL的查询(联合查询,查询排序,正则表达式) MySQL的查询 联合查询实例 -- 联合查询 SELECT * FROM user union ...

  5. mysql联合查询和关联查询

    最近面试中,Java的都会考察数据库,写SQL语句,大多数就问关联查询,索引 看看下面三个关联查询的 SQL 语句有何区别?SELECT * FROM score, student WHERE sco ...

  6. mysql联合查询查询语句_mysql多表联合查询语句是什么

    mysql多表联合查询语句是:使用select语句,union关键词,语法为[select 语句1 union [union 选项] select 语句2 union [union 选项] selec ...

  7. mysql联合查询怎么加子查询_MySQL数据库 —子查询,联合查询

    编程之家收集整理的这篇文章主要介绍了MySQL数据库 -子查询,联合查询,编程之家小编觉得挺不错的,现在分享给大家,也给大家做个参考. <MySQL数据库 -子查询,联合查询>要点: 本文 ...

  8. 五、MySQL联合查询学习笔记 + 查询总结(详解)

    9. 联合查询 union 联合 合并:将多条查询语句的结果合并成一个结果 语法: 查询语句1 UNION 查询语句2 UNION - 应用场景:要查询的结果来自多个表,且多个表之间没有直接的连接关系 ...

  9. mysql联合查询sql优化

    我们在使用mysql数据库时,经常会使用到mysql的联合查询,联合查询分为内连接和外连接,内连接查询结果是联合的表都存在匹配才会有结果,外连接则根据驱动表是否存在匹配来生成结果集. 这里使用mysq ...

最新文章

  1. 没学过python、但是还是有公司要-学习python 基础都会了 为什么还是做不出项目呢?...
  2. hdu hide handkerchief
  3. OS / 进程启动过程
  4. logging模块和包
  5. C++ 二进制文件写操作
  6. 金钱能让人更快乐吗?手把手教你用机器学习找到答案
  7. 2021-06-01 深入分析锁升级流程的基础
  8. 在线CSV转YAML工具
  9. 计算机组成原理白中英ppt,计算机组成原理(本全)白中英.ppt
  10. PHP 密码生成器 计算生成时间
  11. STM8S103之外部中断
  12. 浅谈被动式IAST产品与技术实现
  13. 如何巧妙应用shift键的解说
  14. bootstrap手风琴_快速提示:如何自定义Bootstrap 4的手风琴组件
  15. 疯狂的Google之各种传说
  16. Spring Boot 2.x基础教程:使用Spring Data JPA访问MySQL我们得从哪入手
  17. c盘太小想扩容,合并硬盘分区的方法,硬盘合并分区的步骤
  18. MySQL数据库企业级开发技术
  19. 使用python异步框架aiohttp从NASA抓取火星图片
  20. RISC-V 实现整数运算指令(Part 2)

热门文章

  1. cas server php下载,关于用CAS Server与Php、Jetty配置实现SSO#4
  2. html翻转切换div效果,图片翻转效果
  3. FTP多用户权限 linux环境 一站式解决方案(基础篇)
  4. Nacos配置中心规范
  5. 查询字段是date类型的数据
  6. 如何把暂存区恢复成和HEAD的一样?
  7. 【Java线程池】Java线程池汇总,看这一篇文章就够了
  8. vue-datepicker的使用
  9. Windows批处理文件(.bat文件和.cmd文件)简单使用
  10. mysql 数据修改记录日志_mysql对数据的更新操作记录在哪个日志中?