新建两个表进行测试:

test_a

ID name
1 曹操
2 郭嘉
3 孙权
4 周瑜

test_b

ID name
1 刘备
2 关羽
3 张飞
4 孙权
5 周瑜

1.UNION形成并集

  UNION可以对两个或多个结果集进行连接,形成“并集”。

  子结果集所有的记录组合在一起形成新的结果集。

1、限定条件

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

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

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

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

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

2、语法形式
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;
3.示例:

  无重复记录:



  有重复记录:

2.EXCEPT形成差集

  EXCEPT可以对两个或多个结果集进行连接,形成“差集”。

  返回左边结果集合中已经有的记录,而右边结果集中没有的记录。

1、限定条件

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

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

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

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

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

2、语法形式
SELECT column_name(s) FROM table1
EXCEPT
SELECT column_name(s) FROM table2;

  博主的MySQL版本不支持EXCEPT,暂用NOT IN展示结果。

3.INNER JOIN形成交集

  INNER JOIN可以对两个或多个结果集进行连接,形成“交集”。

  返回左边结果集和右边结果集中都有的记录。

1、限定条件

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

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

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

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

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

2、语法形式
SELECT column_name(s) FROM table1
INNER JOIN table2
ON table2.column_name(s) = table1.column_name(s);

SELECT column_name(s) FROM table1
JOIN table2
ON table2.column_name(s) = table1.column_name(s);

SQL查询:并集、差集、交集的更多相关文章

  1. SQL Server操作结果集-并集 差集 交集 结果集排序

    操作结果集 为了配合测试,特地建了两个表,并且添加了一些测试数据,其中重复记录为东吴的人物. 表:Person_1魏国人物 表:Person_2蜀国人物 A.Union形成并集 Union可以对两个或 ...

  2. 总结 sql 的 并集、交集、差集

    有两个表 ,表a ,表b , create table a { age  int , name varchar(20) } ending=innodb; insert into a values(13 ...

  3. 012_py之证书过期监测及域名使用的py列表的并集差集交集

    一.由于线上域名证书快要过期,需要进行监测,顾写了一个方法用于线上证书过期监测,如下: import ssl,socket,pprint def check_domain_sslexpired(dom ...

  4. sql server中取交集、差集和并集的语法

    这里简单总结下在SQL Server中取交集.差集和并集的语法. 交集:INTERSECT(适用于两个结果集) SELECT ID, NAME FROM YANGGB1 INTERSECT SELEC ...

  5. List之Union(),Intersect(),Except() 即并集,交集,差集运算。

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  6. java8 集合求差集、并集、交集

    前言 java8里最大亮点是lambda,让我们用习惯C# linq的语法,也能眼前一亮.但是比起C#的语法糖还是差的很远. 差集.并集.交集 @Test public void test1(){ L ...

  7. PHP求并集,交集,差集

    PHP求并集,交集,差集 一.总结 一句话总结:在php中如果我想要对两个数组进行如并集.交集和差集操作,我们可直接使用php自带的函数来操作如array_merge(),array_intersec ...

  8. python 并集union, 交集intersection, 差集difference, 对称差集symmetric_difference

    python的集合set和其他语言类似,是一个无序不重复元素集, 可用于消除重复元素. 支持union(联合), intersection(交), difference(差)和sysmmetric d ...

  9. (java/javascript) list 交集 并集 差集 去重复并集

    java list 交集 并集 差集 去重复并集 package com; import java.util.ArrayList; import java.util.Iterator; import ...

  10. Python 求两个文本文件以行为单位的交集 并集 差集

    Python 求两个文本文件以行为单位的交集 并集 差集,来代码: s1 = set(open('a.txt','r').readlines()) s2 = set(open('b.txt','r') ...

随机推荐

  1. 关于 better-scroll 设置了以后无法滚动或不生效的问题

    首先在mounted里面注册组件  例:let scroll = new BScroll("#commondityLeftList")   然后打印实例化对象,例:console. ...

  2. PTA 7-3 畅通工程之最低成本建设问题 (30分)

    PTA 7-3 畅通工程之最低成本建设问题 (30分) 现有村落间道路的统计数据表中,列出了有可能建设成标准公路的若干条道路的成本,求使每个村落都有公路连通所需要的最低成本. 输入格式: 输入数据包括 ...

  3. go条件语句

    1. if else package main import "fmt" func main(){ a :=123 if a>100{ fmt.prinln("大于 ...

  4. 菜鸡的Java笔记 第十二 - java 构造方法与匿名对象

    1.点    构造方法的作用以及定义要求    匿名对象的使用    构造方法:        只要出现()的都表示方法        构造方法就是类构造对象时调用的方法,主要用来实例化对象.> ...

  5. vs2012换肤功能,vs2012主题及自定义主题

    vs2012 默认的主题只有浅色和深色两种,深色太黑了,浅色又太亮了!怎么办? 研究不少时间终于找到了怎么编辑vs2012的皮肤 现在开始吧 打开vs2012-工具--扩展和更新 在联机中搜索 The ...

  6. [cf578F]Mirror Box

    构造如下一张无向图: 1.点集大小为$(n+1)(m+1)$,即所有格点 2.边集大小为$nm$,即所有镜子所连结的两个格点 对于一个确定的镜子状态,即可确定上图,那么来考虑什么样的图是合法的 结论: ...

  7. Codeforces 79D - Password(状压 dp+差分转化)

    Codeforces 题目传送门 & 洛谷题目传送门 一个远古场的 *2800,在现在看来大概 *2600 左右罢( 不过我写这篇题解的原因大概是因为这题教会了我一个套路罢( 首先注意到每次翻 ...

  8. JSOI2021 游记

    Day 0 - 2021.4.9 写一波最近的事情吧( 3 月 20 号出头 cnblogs 抽风,说 25 号恢复来着,我就囤了一堆博客在本地准备 25 号发,结果到时候就懒得动了.干脆越屯越多,省 ...

  9. 【转】NG:垂枝桦基因组图谱构建(2+3组装)及重测序分析

    转自希望组公众号.学习二代+三代组装策略的流程 垂枝桦(Betula pendula)是一种速生乔木,能在短短一年时间内开花,木质坚实,可做细工.家具等,经济价值极高.近日,芬兰研究人员对垂枝桦自交系 ...

  10. Augustus 进行基因注释

      目前的从头预测软件大多是基于HMM(隐马尔科夫链)和贝叶斯理论,通过已有物种的注释信息对软件进行训练,从训练结果中去推断一段基因序列中可能的结构,在这方面做的最好的工具是AUGUSTUS它可以仅使 ...