SQL学习简单样例(三):INTERSECT语句和EXCEPT语句

3.INTERSECT语句和EXCEPT语句

intersect语句可以用来查两个表中的“公共”数据信息,即“交叉”数据信息。INTERSECT 返回 INTERSECT 操作数左右两边的两个查询都返回的所有非重复值。

EXCEPT语句则是用来查询上述“公共”信息“除外”才信息。EXCEPT 从左查询中返回右查询没有找到的所有非重复值。

而与UNION联合查询语句一样,INTERSECT语句和EXCEPT语句查询的两个表必须具有相同的结构,即他们的列必须相似,数目相等,顺序相同,且数据类型兼容。

3.1 INTERSECT语句和EXCEPT语句

select 列名 from 表名1

intersect

select 列名 from 表名2

select 列名 from 表名1

except

select 列名 from 表名2

3.2intersect实例

样例数据



  

要求:求出上面两表中的共同部分。

SELECT [id]

      ,[姓名]

      ,[学校]

      ,[地址]

      ,[时间]

  FROM [mydata].[dbo].[Table_6]

intersect

SELECT [id]

      ,[name]

      ,[school]

      ,[address]

      ,[data]

  FROM [mydata].[dbo].[Table_1]

执行结果:


要求:输出上面两表中共同信息除外的信息

SELECT [id]

      ,[姓名]

      ,[学校]

      ,[地址]

      ,[时间]

  FROM [mydata].[dbo].[Table_6]

except

SELECT [id]

      ,[name]

      ,[school]

      ,[address]

      ,[data]

  FROM [mydata].[dbo].[Table_1]

执行结果:


 注:输出结果列名与第一个select 语句中的表的列名一致。

猜你喜欢

转载自zxlyecf2.iteye.com/blog/2013740