数据库中union和union all的区别

最近在学习数据库的基本知识中看到这union和union all这两个语句,刚开始确实会容易被迷惑,后来在别人的博客上好好的看了一下,才明白真正的区别

union 会对表中的数据进行并集操作,若两个表中有相同的数据则只显示其中一个,并且对操作后的数据进行一定规则的排序。

union all也会对表中的数据进行并集操作,但若两个表中有相同的数据会全部都显示出来且无排序。

好,接下来我考一下大家这个问题,看看大家学的怎么样了?

  • 你认识马冬梅吗?
  • 什么冬梅?
  • 马冬梅
  • 马什么梅?
  • 马冬梅
  • 马东什么?
  • 得嘞,看来大家对这个问题还是不太清楚,接下来我举一个例子大家就可以明白啦!

如下有两个表(用excel代替,可以想象成数据
库中的表)
表一
*****/
表二
在这里插入图片描述

若是两个表进行union操作则会形成一个这样的表

在这里插入图片描述
若进行union all 则会形成另外这样的一个表
在这里插入图片描述

大家对这两个表进行对比就可以发现

  1. union将两个表的重复值只显示了一个且对这些数据按照id进行了排序
  2. union all 将两个表的重复值显示了两遍,且这两个表合并后并没有进行排序。而是直接堆叠在了一起

ok,这篇文章到这里就结束啦~大家有什么不会的可以评论区留言哈!也可以直接私信我哦!
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值