hc学习平台

 找回密码
 立即注册
搜索
热搜: 活动 交友 javakc
 › 学习交流 › MySql › union和union all有什么区别
查看: 1582|回复: 1
打印 上一主题 下一主题

union和union all有什么区别

[复制链接]

2249

主题

0

帖子

0

博客

admin

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

跳转到指定楼层
楼主
发表于2015-01-23 17:37:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

0

主题

1181

帖子

2

博客

yjz123456

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2016-08-23 20:11:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

union 联合两个表 去重而且排序

union All也是联合两个表 不去重也不排序

0

主题

1104

帖子

2

博客

桃子++

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2016-08-29 09:31:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

union求两个表的并集的时候,会自动去掉重复的部分

union all 则会把所有的部分都显示出来,包括重复的

0

主题

856

帖子

2

博客

bnlnk

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2016-08-31 19:40:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用union会去除重复元素,union不会去除重复元素

0

主题

1458

帖子

0

博客

梦紫菱0124

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2016-09-06 14:12:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
答:union和union都是取两个集合的并集,但是区别是union是将取到的集合中重复部分删除,二unionall不删除
WR

0

主题

1674

帖子

0

博客

WR

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2016-09-07 10:20:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

union合并两个结果集,排除重复数据

union all合并两个结果集,不排除重复数据,全部合并

0

主题

1700

帖子

0

博客

song

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2016-09-07 10:56:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

union  可以将两个select语句的查询结果合并在一起,前提是两个select语句所查询的字段数量是一致的。


例3:将两个查询结果合并起来,使用union关键字:

       select id, name, age, sex, phone, city, roleId

       from db_user

       where roleId is not null

       union

       select id, name, age, sex, phone, city, '2013103'

       from db_user

       where roleId is null


使用union将两个结果集合并    结果中没有重复的数据

使用union all将两个结果集合并  结果中有重复的数据

沙发
发表于2016-09-07 15:00:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

union关键字,可以将两个select语句的查询结果合并在一起,前提是两个select语句所查询的字段数量是一致的。

union all关键字,也可以将两个select语句的查询结果合并在一起,但是union all中可能有重复的元素,union中没有重复的元素。

0

主题

1510

帖子

0

博客

zhangjialong

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2016-09-07 15:36:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

union和union all都是将两个查询的结果集连在一起的操作

但是:

union:将两个查询的结果集连在一起的时候,会排重,去掉重复的数据

union all:将两个查询的结果集连在一起的时候,不会去掉重复数据,直接将两张表连接


0

主题

1402

帖子

0

博客

马鹏磊

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2016-09-07 17:45:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

union 使用 union 将两个结果集合并,结果集中有重复的姓名

union all 将两个结果集合并 结果集中有重复的姓名,

 

0

主题

1451

帖子

0

博客

gaoye

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2016-09-07 16:38:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

union 在SQL中并集使用union关键字,可以将两个select语句的查询结果合并在一起,前提是两个select语句所查询的字段数量是一致的。不会重复。

union all  取并集时 允许有重复,完全把两个结果合并到一起 



0

主题

1721

帖子

0

博客

XIAOC

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2016-09-07 16:51:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

union是将合并后的表中重复的数据删除

union all没有将合并后的表中重复的数据删除,

0

主题

1450

帖子

0

博客

Sarbr

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2016-09-07 17:07:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

union 合并两个结果集 把不重复的数据组合到一起

union all 合并两个结果集 所有的数据组合到一起(包括重复的)

0

主题

1636

帖子

0

博客

renmihe

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2016-09-07 17:35:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

在SQL中并集使用union关键字,可以将两个select语句的查询结果合并在一起,前提是两个select语句所查询的字段数量是一致的


union和union all的区别:


对表进行两个不同条件语句的查询时,两个表中查询到的结果有相同数据时


union可以排重 只会让出现的结果表中的重复数据出现一次

union all只是把两个查询到的结果表中的数据合在一起


0

主题

1576

帖子

0

博客

liufangyuan

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2016-09-07 17:55:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

union:合并两个结果集,会去掉重复的数据,排重

union all:联合所有的数据,不进行排重


select score
  from score
  where courseId=(select id from course where name= '语文')
  intersect
select score
  from score
  where studentId=(select id from student where name='王星星')

0

主题

1518

帖子

0

博客

Cracia

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2016-09-09 14:28:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

union:可将两个查询结果进行排重,得到唯一数据

unionAll:不将两个查询结果排重,得到重复数据

0

主题

1932

帖子

0

博客

740317431

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2017-08-19 10:46:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

union和union all都是并集的意思

union是取并集并且去重

而union all不会去重

0

主题

1902

帖子

0

博客

王之神判

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2017-08-19 15:09:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

union将两个结果集合并,重复值合并成一个

使用union all将两个结果集合并,重复值不合并

0

主题

1694

帖子

0

博客

wulinan

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2017-08-20 19:27:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

union两个表取并集后自动排重

union all两个表取并集后全排列

 

0

主题

1213

帖子

0

博客

yanghao

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2018-09-06 18:05:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
表合并后是否去重

0

主题

982

帖子

0

博客

m1359292934

Rank: 9 Rank: 9 Rank: 9

积分

IP 编辑 禁止 帖子 清理

沙发
发表于2019-10-31 14:03:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
union会自动压缩多个结果集合中的重复结果,而union all则将所有的结果全部显示出来,不管是不是重复。


站点统计|举报|Archiver|手机版|小黑屋|Comsenz Inc.

GMT+8, , Processed in 0.195171 second(s), 9 queries .

Powered by javakc! X1.0

© 2004-2014 javakc

f1208.com 备案号:京ICP备14030918号-1

返回顶部