MySQL中UNION和UNION ALL的区别有哪些?
2024-01-07 21:09:30
在MySQL中如何想要对两个结果集进行合并操作,可以使用UNION和UNION ALL,如果只是想要去除掉重复的记录,属于UNION ALL 即可,但是如何想要除掉没有重复行数据,就要使用Union。本文详细向大家介绍MySQL中UNION和UNION ALL的区别。
1、具体作用不同
UNION 语句:用于将不同表中相同列中查询的数据展示出来;(不包括重复数据)
UNION ALL 语句:用于将不同表中相同列中查询的数据展示出来;(包括重复数据)
2、使用不同
使用UNION关键字是将所有查询结果合并到一起,然后去除相同的记录。
使用UNION ALL关键字则是将所有的结果合并到一起。
3、效率不同
UNION会对结果排序和去重复 在73万条数据测试中 花费11.84秒查询.
UNION ALL 则不会排序也不会去重复 再73万数据测试中 花费 4.34秒查询
4、排重不同
Union:对两个结果集进行合并操作,多表连接后会去除掉重复的记录没有重复行数据.
UNION ALL :对两个结果集进行合并操作,多表连接后会去除掉重复的记录
总体上说,union all要比union快很多,如果没有排重的需要,建议直接使用union all;如果需要排重,则使用union。
文章来源:https://blog.csdn.net/yukuleshui/article/details/135392735
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!