当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQLServer 数据集合的交、并、差集运算

MSSQL
利用 Case 敘述做 SQL 的動態排列
SQL Server 2000 与 SQL Server 7.0 版兼容性问题
数据变换和转换注意事项(SQL)
浅谈优化SQLServer数据库服务器内存配置的策略
SQL2000管理SQL7服务器出现TIMEOUT问题的解决
Web环境下MS SQL Server中数据的磁带备份与恢复
SQL Server 7.0与以前的版本相比,安全模式中最重要的
如何用sql语句修改数据表中字段,实现identity(100,1)
sqlserver7.0中如何在死锁产生时自动将其杀死
Sql server使用内存限定在多少最为合适
使用MS SQL7的LINKED SERVER(一)
使用MS SQL7的LINKED SERVER(二)
使用MS SQL7的LINKED SERVER(三)
使用MS SQL7的LINKED SERVER(四)
SQL--JOIN之完全用法
总结 SQL Server 中死锁产生的原因及解决办法
数据库正规化和设计技巧
IDENTITY列的一个有用操作
聚合函数
当SQL Server数据库崩溃时如何恢复?

MSSQL 中的 SQLServer 数据集合的交、并、差集运算


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 539 ::
收藏到网摘: n/a

SQLServer2005通过intersect,union,except和三个关键字对应交、并、差三种集合运算。 他们的对应关系可以参考下面图示相关测试实例如下:

相关测试实例如下:
复制代码 代码如下:

use tempdb
go
if (object_id ('t1' ) is not null ) drop table t1
if (object_id ('t2' ) is not null ) drop table t2
go
create table t1 (a int )
insert into t1 select 1 union select 2 union select 3
create table t2 (a int )
insert into t2 select 3 union select 4 union select 5
go
select * from t1 union select * from t2
go
/* 求表并集
1
2
3
4
5*/
select * from t1 union all select * from t2
go
/*求表并集不过滤重复
1
2
3
3
4
5*/
select * from t1 except select * from t2
go
/*求t1对t2的差集
1
2*/
select * from t1 intersect select * from t2
go
/*求t1对t2的交集
3*/