mysql 交集,并集,差集
前言:mysql只有并集语句union,没有差集合交集,本文写了下交集和差集的实现。
一、创建二个表
DROP TABLE IF EXISTS t1 ;
CREATE TABLE t1 (name VARCHAR(30) , age int) ENGINE=innodb;
insert into t1 VALUES ('张三',33);
insert into t1 VALUES ('李四',44);
insert into t1 VALUES ('王五',55);
insert into t1 VALUES ('孙六',66);DROP TABLE IF EXISTS t2 ;
CREATE TABLE t2 (name VARCHAR(30) , age int) ENGINE=innodb;
insert into t2 VALUES ('张三',33);
insert into t2 VALUES ('李四',44);
insert into t2 VALUES ('秦七',77);
二、并集
select * from t1
UNION
select * from t2
三、交集
#方式一
select * from t1 where EXISTS (select * from t2 where t1.name= t2.name and t1.age= t2.age
);#方式二 (不推荐)
select * from t1 where (t1.name ,t1.age) in (select * from t2
)#方式三
select * from (select * from t1
union allselect * from t2
) t1 GROUP BY name,age HAVING COUNT(*)=2
四、差集 (只演示t1和t2的差集,t1有t2没有的)
select * from t1 where not EXISTS (
select * from t2 where t1.name = t2.name and t1.age = t2.age
)select * from t1 where (name,age) not in ( select * from t2)select t1.* from t1 LEFT JOIN t2 on t1.name = t2.name
and t1.age = t2.age where t2.name is null
mysql 交集,并集,差集相关推荐
- MySQL求交集 并集 差集
MySQL求交集 并集 差集 交集 两个表之间相同的 并集 两个表之间的总和 ps: union 自带去重 差集 两个表直接的差值
- lambda 对象去重_采用java8 lambda表达式 实现 java list 交集 并集 差集 去重复并集...
采用java8 lambda表达式 实现java list 交集/并集/差集/去重并集 一般的javaList 交.并集采用简单的 removeAll retainAll 等操作,不过这也破坏了原始的 ...
- java实现交集并集差集
java实现交集并集差集 ***`package 第一次模拟测试; import java.util.ArrayList; import java.util.HashSet; import java. ...
- oracle 并集 时间_Oracle集合运算符 交集 并集 差集
集合运算符:UNION/UNION ALL 并集,INTERSECT 交集,MINUS 差集 一.union求并集,公共部分只有包含一次 例:求emp表ename中含'A'或含有'M' SQL> ...
- 采用java8 lambda表达式 实现 java list 交集 并集 差集 去重复并集
采用java8 lambda表达式 实现java list 交集/并集/差集/去重并集 一般的javaList 交.并集采用简单的 removeAll retainAll 等操作,不过这也破坏了原始的 ...
- go自定义和使用set包处理列表 交集 并集 差集
自定义交集 并集 差集 package mainimport "fmt"func main() {aList := []string{"1", "2& ...
- oracle表交集并集,oracle交集,并集,差集
oracle交集,并集,差集 [sql] create table test1 ( name varchar(10), NN varchar(10) ); insert into test1 valu ...
- sort求交集并集差集
uniq -u 取出只出现过一次的元素,用来求差集 uniq -c group by uniq -d 取出出现次数大于等于2的元素,用来求交集 sort 1 2 和cat 1 2 ...
- JAVA Hashset求集合的交集并集差集
JAVA Hashset求集合的交集并集差集 Hashset是Set接口较为常见的一个子类,该子类的最大特点是不允许保存重复的元素,并且所有的内容都采用散列(无序)的方式进行存储. package c ...
- js数组交集并集差集
数组交集并集差集 /*1. 数组并集concat方法展开运算符reduce*/ const arr1 = [1, 3, 89, 20, 3, 6, 1, 47, 81, 6] const arr2 = ...
最新文章
- 扶贫干部拍胸脯认证,AI开发者上手零门槛,百度打造 “云智一体”全栈开发杀手锏...
- LeetCode-35. Search Insert Position
- mysql error 变量_mysql 变量问题
- 【Jmeter篇】Linux环境下安装部署运行Jmeter
- 2017.10.19 起床困难综合征 思考记录
- tar 整个linux系统,linux下tar解压
- C/C++编程语言中volatile关键字介绍
- android 代码 华为 os,Android | 带你零代码实现安卓扫码功能
- jquery 操作select
- 纯Java文件操作工具,支持文件、文件夹的复制、删除、移动
- 破解wifi并实施中间人攻击
- kotlin使用gson解析json
- SQL2008 安装需要重启计算机
- vue 父传子 子传父实现方式
- Contiki网络协议栈uIP和rime
- SpringBoot国际化失败的原因,切换中英文无效
- 冲量在线正式加入中关村可信计算产业联盟,共同推动可信计算产业深度发展
- java计算机毕业设计中学招生管理系统源码+数据库+系统+lw文档+mybatis+运行部署
- 计算机等级考试php,计算机等级考试查询系统
- 淘宝客网站为什么会被腾讯拦截