SQL Server 中关于EXCEPT和INTERSECT的用法
来源:互联网 发布:淘宝大额刷层级 编辑:程序博客网 时间:2024/04/28 22:03
熟练使用SQL Server中的各种用法会给查询带来很多方便。今天就介绍一下EXCEPT和INTERSECT。注意此语法仅在SQL Server 2005及以上版本支持。
EXCEPT是指在第一个集合中存在,但是不存在于第二个集合中的数据。
INTERSECT是指在两个集合中都存在的数据。
测试如下:
- create table t1(id int,mark char(2))
- go
- create table t2(id int,mark char(2))
- go
- insert into t1
- select 1,'t1' union all
- select 2,'t2' union all
- select 3,'t3' union all
- select 4,'t4'
- go
- insert into t2
- select 2,'t2' union all
- select 3,'m3' union all
- select 5,'m5' union all
- select 6,'t6'
- go
- select * from t1
- EXCEPT
- select * from t2
- go
- select * from t1
- INTERSECT
- select * from t2
- go
- --EXCEPT结果集为
- --1 t1
- --3 t3
- --4 t4
- --INTERSECT结果集为
- --2 t2
EXCEPT和INTERSECT的优先级:
为了测试它们之间的优先级,运行下面的测试代码:
- create table t3(int id,mark char(2))
- go
- insert into t3
- select 3,'t3' union all
- select 3,'r3' union all
- select 5,'m5' union all
- select 5,'r5' union all
- select 7,'b7' union all
- select 8,'b8'
- go
- select * from t1
- EXCEPT
- select * from t2
- INTERSECT
- select * from t3
- --运行结果
- --1 t1
- --2 t2
- --3 t3
- --4 t4
为什么会出现如上结果呢,请看下面的执行计划:
原来t2和t3先进行的INTERSECT运算,得出5 m5结果集,再和t1进行EXCEPT运算。
- SQL Server 中关于EXCEPT和INTERSECT的用法
- SQL Server 中关于EXCEPT和INTERSECT的用法
- SQL Server 中关于EXCEPT和INTERSECT的用法
- SQL Server 中关于EXCEPT和INTERSECT的用法
- SQL Server 中关于EXCEPT和INTERSECT的用法
- SQL Server 中关于EXCEPT和INTERSECT的用法
- SQL Server 中关于EXCEPT和INTERSECT的用法
- SQL Server 中关于EXCEPT和INTERSECT的用法
- SQL Server 中关于EXCEPT和INTERSECT的用法
- SQL Server 中关于EXCEPT和INTERSECT的用法
- SQL Server 中关于EXCEPT和INTERSECT的用法
- SQL Server 2005中Except和Intersect的用法示例
- SQL Server 中关于EXCEPT和INTERSECT的用法以及 OPENQUERY连接Oracel比较
- SQL中 EXCEPT和INTERSECT用法
- SQL SERVER 2008的EXCEPT和INTERSECT
- SQL中 EXCEPT、INTERSECT用法
- SQL中 EXCEPT、INTERSECT用法
- sql except和INTERSECT用法
- 编程中对于文件路径应该注意的问题
- Android基础之响应Menu键弹出菜单Demo
- LeetCode - Search for a Range
- sublime 常用配置
- 快速绑定TreeList,速度远远快于Tree.datasource=dt的方法
- SQL Server 中关于EXCEPT和INTERSECT的用法
- Struts2.3.15搭建项目实例
- 第4天 C语言与画面显示的练习
- Cocos2d-X for XNA游戏引擎发布
- 修改JAVA_HOME无效,java版本保持不变的问题解决
- LeetCode-Valid Number - 有限状态机
- sigaction实例
- assertThat使用方法
- 运算符 优先级