数据库中union与unionall的区别

union 将两个表连接后删除其重复的项; 

在平遥等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站设计、做网站 网站设计制作按需网站策划,公司网站建设,企业网站建设,成都品牌网站建设,成都全网营销推广,成都外贸网站建设,平遥网站建设费用合理。


union all 将两个表连接都不删除其重复的项。 


数据库中,UNION和UNION ALL都是将两个结果集合并为一个,但这两者从使用和效率上来说都有所不同。 

UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。实际大部分应用中是不会产生重复的记录,最常见的是过程表与历史表UNION。如: 
select * from users1 union select * from user2 
这个SQL在运行时先取出两个表的结果,再用排序空间进行排序删除重复的记录,最后返回结果集,如果表数据量大的话可能会导致用磁盘进行排序。 



而UNION ALL只是简单的将两个结果合并后就返回。这样,如果返回的两个结果集中有重复的数据,那么返回的结果集就会包含重复的数据了。 
从效率上说,UNION ALL 要比UNION快很多,所以,如果可以确认合并的两个结果集中不包含重复的数据的话,那么就使用UNION ALL,如下: 

select * from user1 union all select * from user2


网站栏目:数据库中union与unionall的区别
文章分享:http://csruizhi.cn/article/jciide.html

其他资讯

Copyright © 2007-2024 成都优众联杰科技有限公司 All Rights Reserved 蜀ICP备2024116266号
友情链接: 定制级高端网站建设 成都网站建设 高端定制网站设计 网站建设方案 营销网站建设 高端品牌网站建设 定制网站设计 攀枝花网站设计 成都网站建设 企业网站制作 成都定制网站建设 移动网站建设 企业网站建设 成都网站建设 网站建设推广 自适应网站建设 成都网站建设公司 网站建设方案 成都网站设计 成都网站建设公司 成都网站建设 成都商城网站制作