sql中的union,except及intersect

1.union:

使用union:组合两个结果表,消除重复的记录。

使用union all:组合两个结果表(重复不去重)。

2.except:

使用except:在table1中但不在table2中的行,同时消除重复行。

使用except all:不消除重复行。

3.intersect:

获取两个结果集的并集。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-28 22:48:37

sql中的union,except及intersect的相关文章

SQL中的union

在SQL中,如果我们查询一个班级的考试成绩数据,再统计考试成绩的总和,我们使用以下两条语句: select StudentName,Grade from Student select '总成绩',SUM(Grade)from Student 执行此两条代码,结果会分别显示在两个表中,我们该如何使两条数据整合在一起?这就用到了union集合运算符,union对两个集合进行操作,两个集合需要有相同的列名,两个集合的列类型应该是相符的,最终列名以第一个集合列名为准. 我们上面的代码片段恰好符合合并的要

Sql中的union和union all的讲解

SQL UNION 和 UNION ALL操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每条 SELECT 语句中的列的顺序必须相同. 假设我们有一个表Student,包括以下字段与数据: drop table student; create table student(id int primary key,name nvarchar2(50) not null,s

SQL中MINUS的用法

minus指令是运用在两个 SQL 语句上.它先找出第一个 SQL 语句所产生的结果,然后看这些结果有没有在第二个 SQL 语句的结果中.如果有的话,那这一笔资料就被去除,而不会在最后的结果中出现.如果第二个 SQL 语句所产生的结果并没有存在于第一个 SQL 语句所产生的结果内,那这笔资料就被抛弃. MINUS 的语法如下: [SQL 语句 1] MINUS [SQL 语句 2] 我们继续使用一样的例子: Store_Information 表格 store_name  Sales  Date

LINQ to SQL 中 Concat、Union、Intersect、Except 方法的使用

?  前言 LINQ to SQL 中需要对两个或多个数据集进行操作,比如:合并.取交集等,主要使用下面四个方法,这四个方法都是 System.Linq.IQueryable<out T> 接口的扩展方法,并且都是延迟加载方法,下面是使用的简单示例. ?  示例数据,数据表:Subject(科目表).Score(成绩表) 1.   Concat() 方法 1)   方法声明 public static IQueryable<TSource> Concat<TSource>

SQL中union运算操作的理解

在SQL中,对于并运算,可以使用union关键字. 例如: SELECT column_name(s) FROM table_name1 UNION SELECT column_name(s) FROM table_name2 在学习过程中,我产生了一个疑问,如果两个表的属性名称不同会出现什么情况呢? 直接模拟了一个例子,构建代码如下: create table employee (empname char(6), numchildren int ) create table dependent

SQL中MINUS的用法与UNION的用法

一:MINUS指令 其是运用在两个 SQL 语句上.它先找出第一个 SQL 语句所产生的结果,然后看这些结果有没有在第二个 SQL语句的结果中.如果有的话,那第一个SQL结果数据就被去除,而不会在最后的结果中出现.如果第一个 SQL 语句所产生的结果并没有存在于第二个 SQL 语句所产生的结果内,那第一个SQL结果数据就被保留,会在最后的结果中出现.MINUS 的语法如下:[SQL 语句 1]MINUS[SQL 语句 2]举例:Store_Information 表格store_name  Sa

Oracle中的Union、Union All、Intersect、Minus[转]

众所周知的几个结果集集合操作命令,今天详细地测试了一下,发现一些问题,记录备考. 假设我们有一个表Student,包括以下字段与数据: drop table student; create table student ( id int primary key, name nvarchar2(50) not null, score number not null ); insert into student values(1,'Aaron',78); insert into student val

SQL语句中:UNION与UNION ALL的区别

UNION用的比较多union all是直接连接,取到得是所有值,记录可能有重复 union 是取唯一值,记录没有重复 1.UNION 的语法如下: [SQL 语句 1] UNION [SQL 语句 2] 2.UNION ALL 的语法如下: [SQL 语句 1] UNION ALL [SQL 语句 2] 效率:UNION和UNION ALL关键字都是将两个结果集合并为一个,但这两者从使用和效率上来说都有所不同. 1.对重复结果的处理:UNION在进行表链接后会筛选掉重复的记录,Union Al

SQL中使用WITH AS提高性能,使用公用表表达式(CTE)简化嵌套SQL

一.WITH AS的含义     WITH AS短语,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到.有的时候,是为了让SQL语句的可读性更高些,也有可能是在UNION ALL的不同部分,作为提供数据的部分. 特别对于UNION ALL比较有用.因为UNION ALL的每个部分可能相同,但是如果每个部分都去执行一遍的话,则成本太高,所以可以使用WITH AS短语,则只要执行一遍即可.如果WITH AS短语所定