Java教程

union all和union的区别

本文主要是介绍union all和union的区别,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

最近处理工作中发现明细数据缺失了很多,排查中发现是union和union all使用不当导致,上网搜了一下两者的区别,简单记录一下

 

一、区别1:

1、union: 对两个结果集进行并集操作, 不包括重复行,相当于distinct, 同时进行默认规则的排序;

2、union all: 对两个结果集进行并集操作, 包括重复行, 即所有的结果全部显示, 不管是不是重复;

 

 

 

二、区别2:

1、union: 会对获取的结果进行排序操作

2、union all: 不会对获取的结果进行排序操作

 

 

 

 

select * from Table1  
union   
select * from Table2  

  

 

 

select * from Table1  
union all  
select * from Table2  

 

三、总结

union all只是合并查询结果,并不会进行去重和排序操作,在没有去重的前提下,使用union all的执行效率要比union高

这篇关于union all和union的区别的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!