数据集分四类:

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. Unity3D入门之JavaScript动态创建对象

    接着上一篇Unity3D入门文章,这里继续使用JavaScript脚本语言. 调试:Unity集成了MonoDevelop编辑器,在代码某行的左侧点击,即可下一个断点.然后先关闭Unity编辑器,在M ...

  2. hdu3315-My Brute(费用流 or KM算法)

    题目:My Brute Seaco是一个漂亮的妹子,喜欢玩一款名叫My Brute的游戏.情人节快到了,starvae和xingxing都想邀请妹子过节,但是妹子只能陪一个啊,于是两个人决定打一架,用 ...

  3. A Tour of Go Switch with no condition

    Switch without a condition is the same as switch true. This construct can be a clean way to write lo ...

  4. 射频识别技术漫谈(13)——Mifare S50与S70【worldisng笔记】

    Mifare S50和Mifare S70又常被称为Mifare Standard.Mifare Classic.MF1,是遵守ISO14443A标准的卡片中应用最为广泛.影响力最大的的一员.而Mif ...

  5. 我被eclipse的tomcat坑的经历

    奇怪的乱码问题: 1.jsp页面utf-8 2.java代码utf-8 3.数据库编码utf-8 4.tomcat server.xml配置URIEncoding="UTF-8" ...

  6. iOS UDID和UUID详解

    这篇是普及知识来了,纯属消遣时间,有需要的可以遛一遛. UDID的全名为 Unique Device Identifier :设备唯一标识符.从名称上也可以看出,UDID这个东西是和设备有关的,而且是 ...

  7. cocos2d-x 判断系统语言

    转自:http://blog.csdn.net/tangaowen/article/details/8878193 //default language is local language ccLan ...

  8. send,recv,sendto,recvfrom

    send函数 int send( SOCKET s,    const char FAR *buf,    int len,    int flags ); 不论是客户还是server应用程序都用se ...

  9. Opencv cvCircle函数

    cvCircle(CvArr* img, CvPoint center, int radius, CvScalar color, int thickness=1, int lineType=8, in ...

  10. java基础复习之对于String对象,能够使用“=”赋值,也能够使用newkeyword赋值,两种方式有什么差别?

    String类型是实际工作中经经常使用到的类型,从数据类型上划分,String是一个引用类型,是API中定义的一个类.所以String类型的对象能够用new创建,比如String name=new S ...