oracle用UNION-ALL 替换UNION ( 如果有可能的话)
当SQL语句需要UNION两个查询结果集合时,这两个结果集合会以UNION-ALL的方式被合并, 然后在输出最终结果前进行排序.
如果用UNION ALL替代UNION, 这样排序就不是必要了. 效率就会因此得到提高.
举例:
低效:
SELECT ACCT_NUM, BALANCE_AMT
FROM DEBIT_TRANSACTIONS
WHERE TRAN_DATE = ’31-DEC-95’
UNION
SELECT ACCT_NUM, BALANCE_AMT
FROM DEBIT_TRANSACTIONS
WHERE TRAN_DATE = ’31-DEC-95’
高效:
SELECT ACCT_NUM, BALANCE_AMT
FROM DEBIT_TRANSACTIONS
WHERE TRAN_DATE = ’31-DEC-95’
UNION ALL
SELECT ACCT_NUM, BALANCE_AMT
FROM DEBIT_TRANSACTIONS
WHERE TRAN_DATE = ’31-DEC-95’
需要注意的是,UNION ALL 将重复输出两个结果集合中相同记录. 因此各位还是
要从业务需求分析使用UNION ALL的可行性.
UNION 将对结果集合排序,这个操作会使用到SORT_AREA_SIZE这块内存. 对于这
块内存的优化也是相当重要的. 下面的SQL可以用来查询排序的消耗量
Select substr(name,1,25) "Sort Area Name",
substr(value,1,15) "Value"
from v$sysstat
where name like 'sort%'
转载于:https://www.cnblogs.com/fanweisheng/p/11125361.html
oracle用UNION-ALL 替换UNION ( 如果有可能的话)相关推荐
- oracle union all写法,【oracle】-集合运算:UNION,UNION ALL...
在Oracle中提供了三种类型的集合操作: 并(UNION).交(INTERSECT).差(MINUS) UNION:求并,重复记录只显示一次. UNION ALL:求并集,显示所有记录信息. INT ...
- MongoDB查询实现 笛卡尔积,Union All 和Union 功能
转载自 MongoDB查询实现 笛卡尔积,Union All 和Union 功能 此篇文章及以后的文章大部分都是从聚合管道(aggregation pipeline)的一些语法为基础讲解的,如果不 ...
- 关于UNION ALL与 UNION 用法和区别
(转自:http://www.cnblogs.com/EricaMIN1987_IT/archive/2011/01/20/1940188.html) UNION指令的目的是将两个SQL语句的结果合并 ...
- UNION ALL vs UNION
UNION ALL vs UNION 一直没意识到它们之间的区别,只知道UNION ALL在性能上优于UNION,忽略一个很重要的区别: UNION会去掉重复的行,而UNION ALL是包括所有行. ...
- UNION ALL用法 以及 UNION ALL和UNION的区别
部分参考自文章: https://blog.csdn.net/a200822146085/article/details/119545374(CC 4.0 BY-SA版权协议)CSDN「我心依依旧」 ...
- UNION ALL 和 UNION 的区别
UNION ALL 和 UNION 的区别 UNION:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序. UNION ALL:对两个结果集进行并集操作,包括重复行,不进行排序.
- union all和union的区别
union all和union的区别就在于成效,union是在针对数据进行合并整理的同时不会整理重复行,并且还会采取默认排序.而union all在整理数据的时候,会将重复行也一起整理,但是不会重新排 ...
- union all 和 union
一.结果集允许重复的话,尽量用 union all 代替 union [union]不管检索结果有没有重复,都会尝试进行合并,然后在输出最终结果前进行排序.过滤操作,增加大量的 CPU 运算,加大资源 ...
- mybatis中union all与union的用法
1.需求分析 很多情况下,我们会遇到类似的需求:混合型的列表再进行分类:这种情况,可以考虑java逻辑层面两个甚至更多的list相加,然后最后进行排序,但是一旦进行分页,排序可能就混乱了,这个笔者建议 ...
- oracle union wher,sql – UNION with WHERE子句
在我的经验中,Oracle非常善于推动简单的谓词.以下测试在Oracle 11.2上进行.我相当确定它在所有版本的10g上也生成相同的执行计划. (请人,如果你运行较早的版本,并尝试以下,请随意留下评 ...
最新文章
- syslog打印不带等级_printk的日志级别和控制台级别
- unittest单元测试框架—加载测试用例的3种方法以及测试报告存储管理
- 标题在图表上_从零开始学Excel——标题和图例的设置(143)
- 计算机应用属不属于科技股,哪些股票属于科技股
- dns 服务器无法从应用程序目录分区,DNS 区域不随事件 4000 和 4007 一起加载 - Windows Server | Microsoft Docs...
- 安卓进阶系列-06数据库框架(LitePal)的使用
- js动态添加meta标签
- erlang 编译 安装
- Solaris 网络 配置
- OpenGL与gl glu glut freeglut glew glfw封装库关系(十五)
- mybatis 中collection中需要 open close separator
- 加速VS2005 or VS2008
- .net core 中使用httpclient下载文件
- math_Taylor_常见幂级数展开
- 【教程】无需下载任何软件,使win10任务栏完全透明!
- 光纤传输技术——光器件(三)
- 在Windows Server 2003企业版下让移动硬盘自动显示盘符
- (Android) 如何使用HOOK实现动态注入以及自动化操作
- 计算机图形学复习笔记
- 2021年电影市场票房波动模型分析思路及参考代码
热门文章
- 有趣的mysql string和0比较返回1的问题
- nodejs的一些日常操作
- 1002:A+B 输入输出练习III 分数: 2
- 金蝶ERP实现产品入库及委外加工冲减生产现场虚仓毛坯数(修正版07-05-10)
- [导入]警告:不能将项目“project”中的依赖项“file”复制到运行目录,因为它将改写引用“file”。...
- 再见了SpringMVC!这个框架有点厉害,甚至干掉了Servlet!
- 分库分表 PK NewSQL数据库!
- 一行代码让纯文本编辑器秒变 Markdown 编辑器
- 微服务架构实战(二):使用API Gateway
- 微服务与架构师的个人见解