SQL语句对结果集操作

前言

集合常见的操作是 交并差的操作,那么SQL语句是如何实现的呢?

1.交集

1.1 关键字 :InterSect形成交集

InterSect可以对两个或多个结果集进行连接,形成“交集”。返回左边结果集和右边结果集中都有的记录。

1.2限定条件

要是用Except来连接结果集,有4个限定条件。

(1)、子结果集要具有相同的结构。

(2)、子结果集的列数必须相同。

(3)、子结果集对应的数据类型必须可以兼容。

(4)、每个子结果集不能包含order by或compute子句。

1.3 语法形式

select_statement intersect select_statement

2.并集

2.1关键字:Union形成并集

Union可以对两个或多个结果集进行连接,形成“并集”。子结果集所有的记录组合在一起形成新的结果集。

2.2 限定条件

要是用Union来连接结果集,有4个限定条件。

(1)、子结果集要具有相同的结构。

(2)、子结果集的列数必须相同。

(3)、子结果集对应的数据类型必须可以兼容。

(4)、每个子结果集不能包含order by和compute子句。

2.3语法形式

 `select_statement union [all] select_statement`

 all代表不能删除重复行。

3.差集

3.1关键字Except形成差集

Except可以对两个或多个结果集进行连接,形成“差集”。 返回左边结果集合中已经有的记录,而右边结果集中没有的记录。

3.2 限定条件:

1、子结果集要具有相同的结构。

2、子结果集的列数必须相同。

3、子结果集对应的数据类型必须可以兼容。

4、每个子结果集不能包含order by 和 compute子句。

3.3 语法形式:

select_statement except select_statement
 
    自动删除重复行。

    原文作者:新手村的0级玩家
    原文地址: https://www.jianshu.com/p/16cdf55d3df5
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞