易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL Server 2005 EXCEPT和INTERSECT运算符


--> Title  : SQL Server 2005EXCEPT和INTERSECT运算符
--> Author : wufeng4552
--> Date   : 2009-10-30
 
(一)概念
EXCEPT和INTERSECT运算符使您可以比较两个或多个SELECT语句的结果并返回非重复值。
(二)區別
EXCEPT运算符返回由EXCEPT运算符左侧的查询返回、而又不包含在右侧查询所返回的值中的所有非重复值。
INTERSECT返回由INTERSECT运算符左侧和右侧的查询都返回的所有非重复值。
(三)注意點
(3.1) 使用EXCEPT或INTERSECT比较的结果集必须具有相同的结构。它们的列数必须相同,并且相应的结果集列的数据类型必须兼容
(3.2) INTERSECT运算符优先于EXCEPT
(3.3) SELECT INTO必须是包含INTERSECT或EXCEPT运算符的语句中的第一个查询,用来创建容纳最终结果集的表
(3.4)ORDER BY子句中的列名或别名必须引用左侧查询返回的列名
(四)實例
SET NOCOUNT ON
--建立測試數據
DECLARE @T1 TABLE(ID INT,[NAME] VARCHAR(10))
INSERT @T1 SELECT 1,'A'
INSERT @T1 SELECT 1,'A'
INSERT @T1 SELECT 2,'B'
INSERT @T1 SELECT 2,'C'
INSERT @T1 SELECT 3,NULL
INSERT @T1 SELECT NULL,'D'
INSERT @T1 SELECT NULL,NULL
DECLARE @T2 TABLE(ID INT,[NAME] VARCHAR(10))
INSERT @T2 SELECT 1,'A'
INSERT @T2 SELECT 2,'E'
INSERT @T2 SELECT 3,'F'
DECLARE @T3 TABLE(ID INT,[NAME] VARCHAR(10))
INSERT @T3 SELECT 4,'G'
INSERT @T3 SELECT 3,NULL
INSERT @T3 SELECT 5,'H'
--1 EXCEPT从左查询中返回右查询沒有找到的所有非重复值。
--找出@T1表的中不存在@T2表的所有非重复值
SELECT * from @T1
EXCEPT
SELECT * from @T2
/*
ID          NAME
----------- ----------
NULL        NULL
NULL        D
2           B
2           C
3           NULL
*/
--MSSQL2000的版本用NOT EXISTS实现EXCEPT的功能
SELECT DISTINCT * from @T1 T
WHERE NOT EXISTS(SELECT 1 from @T2 WHERE ID=T.ID AND [NAME]=T.[NAME])
/*
ID  


相关文档:

避免SQL注入和特殊字符的一种方法

 递归小谈自备C#辅助函数
十08
避免SQL注入和特殊字符的一种方法
C#Add comments
避免SQL注入和特殊字符的办法有很多,不同数据库也有不同数据库的解决方案,ADO.NET中使用DbCommand.Parameters解决这个问题,为了了解他的原理,我查了一下.NET中SQLCommand的源代码和MySQL.NET中MySQLCommand的源代码。
.NET源代 ......

PL/SQL developer远程访问数据库配置方法

使用PL/SQL developer远程访问oracle数据库时,首先要确定本机中装有oracle客户端。目前还不知道哪里单独的oracle客户端安装包。(因为我用的是oracle10g,oracle10g安装的过程中没有特定的客户端选项,所以我一般都是在本机用安装oracle所有功能)
在本机安装好oracle客户端后,我们在本机(即客户端)的oracle的安装目录下 ......

ORACLE数据库里表导入SQL Server数据库

ORACLE数据库里表导入SQL Server数据库
   
  1、在目的SQL Server数据库服务器上安装ORACLE Client软件或者ORACLE ODBC Driver.
    在$ORACLE_HOME\network\admin\tnsnames.ora里配置ORACLE数据库的别名(service name)。
   
  2、在WIN2000或者win200 ......

SQL Server2005 Synonym的使用

--> Title  : SQL Server2005 Synonym的使用
--> Author : wufeng4552
--> Date   : 2009-10-30
1.Synonym的概念
   Synonym(同义词)是SQL Server 2005的新特性。可以简单的理解Synonym为其他對象的别名。
語法
CREATE SYNONYM [ schema_name_1. ] synonym_name FOR & ......

sql server一个使用游标的实例

--创建游标
DECLARE Cursor1 CURSOR FOR
SELECT NODE_NO,NODE_VALUE,SUM(RESALE_SUM-RESALERETU_SUM+SALE_SUM-SALERETU_SUM) sale_sum,
SUM(STORE_SUM) sum_store,SUM(STORE_SUM) store_sum,
sum(RESALE_PROFIT-RESALERETU_PROFIT+SALE_PROFIT-SALERETU_PROFIT-ADJUST_PROFIT) sale_profit
from ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号