SQLServer之集合

栏目: 数据库 · SQL Server · 发布时间: 4年前

内容简介:集合是由一个或多个元素构成的整体,在SQLServer中的表就代表着事实集合,而其中的查询就是在集合的基础上生成的结果集。SQL Server的集合包括交集(INTERSECT)、并集(UNION)、差集(EXCEPT)。可以对两个多个结果集进行连接,形成"交集"。返回左边结果集和右边结果集中都有的记录,且结果不重复(这也是集合的主要特性)子结果集要有相同的结构。

集合的定义

集合是由一个或多个元素构成的整体,在SQLServer中的表就代表着事实集合,而其中的查询就是在集合的基础上生成的结果集。SQL Server的集合包括交集(INTERSECT)、并集(UNION)、差集(EXCEPT)。

交集(INTERSECT)

可以对两个多个结果集进行连接,形成"交集"。返回左边结果集和右边结果集中都有的记录,且结果不重复(这也是集合的主要特性)

交集限制条件

子结果集要有相同的结构。

子结果集的列数必须相同。

子结果集对应的数据类型必须可以兼容。

每个子结果集不能包含order by和compute子句。

交集语法

select * from 结果集
intersect
select * from 结果集

交集示例

select name from [testss].[dbo].[schema_table1]
intersect
select name from [testss].[dbo].[test1]

并集(UNION and UNION ALL)

可以对两个或多个结果集进行连接,形成并集。子结果集所有的记录组合在一起形成新的结果集,其中使用UNION可以得到不重复(去重复)的结果集,使用UNION ALL会得到重复(不去重的结果集)。

并集限制条件

子结果集要具有相同的结构。

子结果集的列数必须相同。

子结果集对应的数据类型必须可以兼容。

每个子结果集不能包含order by 和compute子句

并集(UNION)语法

select * from 结果集
union
select * from 结果集

并集(UNION)示例

select name from [testss].[dbo].[schema_table1]
union
select name from [testss].[dbo].[test1] 

并集(UNION ALL)语法

select * from 结果集
union all
select * from 结果集

并集(UNION ALL)示例

select name from [testss].[dbo].[schema_table1]
union all
select name from [testss].[dbo].[test1] 

差集(EXCEPT)

可以对两个或多个结果集进行连接,形成差集。返回左边结果集中已经有的记录,而右边结果集中没有的记录。

差集限制条件

子结果集要具有相同的结构。

子结果集的列数必须相同。

子结果集对应的数据类型必须可以兼容。

每个子结果集不能包含Order by和compute子句。

差集(EXCEPT)语法

select * from 结果集
except
select * from 结果集

差集(EXCEPT)示例

select name from [testss].[dbo].[schema_table1]
except
select name from [testss].[dbo].[test1] 

提示

集合是我们数据处理过程中的理论基础,可以通过集合的观点去很好的理解不同的查询语句。每一个物理表就是一个集合,当我们要对表进行操作的时候,将它们看成对集合的操作就很好理解了。


以上所述就是小编给大家介绍的《SQLServer之集合》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Haskell

Haskell

Simon Thompson / Addison-Wesley / 1999-3-16 / GBP 40.99

The second edition of Haskell: The Craft of Functional Programming is essential reading for beginners to functional programming and newcomers to the Haskell programming language. The emphasis is on th......一起来看看 《Haskell》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

html转js在线工具
html转js在线工具

html转js在线工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具