数据集分四类:

1.A∩B,既是所求数据集既在A中,又在B中

2.A∪B,既所求数据在数据集A中,或在数据集B中

3.A-B,既所求数据在数据集A中,不在数据集B中

4.B-A,既所求数据在数据集B中,不在数据集A中

和数学一样

数据集:参与数据集运算的两个数据集可以来自任何返回数据集的表达式:
一张表,一张表的子集,多张表,临时表变量,虚拟列,甚至一个值
并不是所有的数据集都可以直接做运算
就像 1个人 + 1只老虎 不能等于2 一样,所以数据集运算需满足三个条件:

1 两个数据集之间必须具有相同数量的列
2 两个数据集之间列出现的次序必须一致
3 两个数据集之间每一个对应的列的数据类型必须匹配

数据集运算:

1 AUB:使用Union实现
当两个数据集中相同的行时,保留一个

使用 Union all 实现
与Union不同的是:当遇到两个数据集中重复的行的时候,全部保留,只做简单的并的操作

2 AnB 使用INTERSECT实现

例如:

SELECT * FROM A1
INTERSECT
SELECT * FROM A2

3 A-B 使用Except实现

例如:

SELECT * FROM A1
EXCEPT
SELECT * FROM A2

3 数据列的别名和排序:

如果没有为数据列指定别名,则数据列的名称按照出现在第一个集合对应的列名算

如果想自定义列名,则需要为数据集运算中出现的第一位的数据集指定别名

SELECT name1 AS a  ,age FROM A1
EXCEPT
SELECT name2,age FROM A2

4 对运算后的结果集进行排序

只需要在运算的最后加上order by子句,但注意:
1 order by是对整个运算后的结果排序,并不是对单个数据集
2 order by 后面排序的字段名称是第一个数据集的字段名或者别名

sqlserver 理解数据集的更多相关文章

  1. 阅读关于DuReader:百度大规模的中文机器阅读理解数据集

    很久之前就得到了百度机器阅读理解关于数据集的这篇文章,今天才进行总结!.... 论文地址:https://arxiv.org/abs/1711.05073 自然语言处理是人工智能皇冠上的明珠,而机器阅 ...

  2. SQLServer 理解copyonly备份操作

    标签:MSSQL/日志截断 概述 Alwayson在添加数据库的过程中如果同步首选项选择的是“完整”,那么就会在主副本上执行copyonly的完整备份和日志备份在辅助副本上执行还原操作,也正是这个操作 ...

  3. Sqlserver 理解子查询

    理解子查询: 理解子查询: 多表连接查询往往也可以用子查询进行替代 子查询本质是嵌套进其他 select update insert Delete 语句的一个被限制的select语句,在子查询中,只有 ...

  4. sqlserver 理解文件和文件组

    在sqlserver中,数据库在硬盘的存储方式和普通文件存储一样,仅仅几个文件而已,sqlserver通过管理逻辑上的文件组的方式来管理存储数据的文件, 如图: 文件组管理着磁盘上的文件,而文件中存放 ...

  5. SQLServer理解copyonly备份操作

    Always在添加数据库的过程中如果同步首选项选择的是“完整”,那么就会在主副本上执行copyonly的完整备份和日志备份在辅助副本上执行还原操作,也正是这个操作让我对copyonly有了新的理解.接 ...

  6. SQLServer如何处理数据集的维度变化

    Student表有三列,分别是姓名.课程.成绩 Name Curricula Mark 张三 语文 70 李四 数学 80 王朝 英语 59 城南 马哲 70 王朝 语文 90 我想得到的效果是,列出 ...

  7. [SqlServer] 理解数据库中的数据页结构

    这边文章,我将会带你深入分析数据库中 数据页 的结构.通过这篇文章的学习,你将掌握如下知识点: 1. 查看一个 表/索引 占用了多少了页. 2. 查看某一页中存储了什么的数据. 3. 验证在数据库中用 ...

  8. SAS数据集

    SAS数据集是存储在SAS逻辑库中.由SAS创建和处理的SAS文件,是SAS存储数据的主要方式.SAS数据集包含以表的观测(行)和 变量(列)为形式存在的数据值,以及用以描述变量类型.长度和创建该数据 ...

  9. 机器阅读理解(看各类QA模型与花式Attention)

    目录 简介 经典模型概述 Model 1: Attentive Reader and Impatient Reader Model 2: Attentive Sum Reader Model 3: S ...

随机推荐

  1. Android问题-selection contains a component,button7,introduced in an ancestor and cannot be deleted.

    问题现象: 在开发Android时增加的控件想删除,可是删除时提示“Android问题-selection contains a component,button7,introduced in an ...

  2. A Tour of Go Function closures

    Go functions may be closures. A closure is a function value that references variables from outside i ...

  3. 转载 深入理解JavaScript中的this关键字

    转载原地址: http://www.cnblogs.com/rainman/archive/2009/05/03/1448392.html 深入理解JavaScript中的this关键字   1. 一 ...

  4. Altium Designer快捷键 【worldsing笔记】

    Shift + R 切换三种布线模式 (忽略, 避开或推挤) Shift + E 触发电气格点开/关 Shift + B 建立查询 Shift + PgUp 放大到最小的递增 Shift + PgDn ...

  5. NSTimer运行机制和线程问题

    A.首先要理解NSTimer运行机制和Runloop之间的关系: 1.IOS的Run Loops机制 Run Loops是线程的基础部份,任何线程,包括主结程,都包含了一个run loop对象,Coc ...

  6. VK Cup 2015 - Finals, online mirror D. Restructuring Company 并查集

    D. Restructuring Company Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/5 ...

  7. coffeeScript demo

    #能够直接在浏览器嵌入coffee-script.js 解析xx.coffee脚本,但真正正式使用时不建议这样使用,coffee-script.js下载地址:http://coffeescript.o ...

  8. C++在使用Qt中SLOT宏须要注意的一个小细节

    大家都知道C++虚函数的机制,对于基类定义为虚函数的地方,子类假设覆写,在基类指针或者引用来指向子类的时候会实现动态绑定. 但假设指针去调用非虚函数,这个时候会调用C++的静态绑定,去推断当前的指针是 ...

  9. MyEclipse设置默认的目光格式

    首先,选择菜单 windows-->preference Java-->Code Style-->Code Templates code-->new Java files 然后 ...

  10. Linux PAM&&PAM后门

    Linux PAM&&PAM后门 我是壮丁 · 2014/03/24 11:08 0x00 PAM简介 PAM (Pluggable Authentication Modules )是 ...