博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL实现差集(Minus)和交集(Intersect)
阅读量:6909 次
发布时间:2019-06-27

本文共 1213 字,大约阅读时间需要 4 分钟。

hot3.png

MySQL没有实现Minus和Intersect功能,就像它也没有实现cube的功能一样。

 
可以用SQL实现同样的功能,就是麻烦了点。
 
drop table t1;
 
drop table t2;

create table t1(id int primary key,nickname varchar(20),playNum varchar(20));

create table t2(id int primary key,nickname varchar(20),playNum varchar(20));

insert into t1 values(1,1,10);

insert into t1 values(2,2,20);

insert into t1 values(3,3,30);

insert into t2 values(1,1,10);

insert into t2 values(2,2,200);

insert into t2 values(3,33,300);

commit;

MySQL实现交集

 
SELECT id, nickname, playNum, COUNT(*)
 
FROM (SELECT id, nickname, playNum

    FROM t1

    UNION ALL

    SELECT id, nickname, playNum

    FROM t2

    ) a

GROUP BY id, nickname, playNum

HAVING COUNT(*) > 1

MySQL实现差集

 
SELECT t1.id, t1.nickname, t1.playNum
 
FROM t1 LEFT JOIN t2 ON t1.id = t2.id

WHERE t1.nickname != t2.nickname

    OR t1.playNum != t2.playNum;

--------------------------------------分割线 --------------------------------------

 14.04下安装MySQL 

《MySQL权威指南(原书第2版)》清晰中文扫描版 PDF 

Ubuntu 14.04 LTS 安装 LNMP Nginx\PHP5 (PHP-FPM)\MySQL 

Ubuntu 14.04下搭建MySQL主从服务器 

Ubuntu 12.04 LTS 构建高可用分布式 MySQL 集群 

Ubuntu 12.04下源代码安装MySQL5.6以及Python-MySQLdb 

--------------------------------------分割线 --------------------------------------

本文永久更新链接地址

转载于:https://my.oschina.net/airship/blog/630423

你可能感兴趣的文章
删除一个链表中的重复元素
查看>>
C# 在多线程环境中,进行安全遍历操作
查看>>
Win7 防护墙设置——Ping命令,Http访问
查看>>
是男人就下100层【第一层】——高仿微信界面(6)
查看>>
day16- re模块(正则表达式 三种查找方法findall search match)
查看>>
CentOS7.x配置bond0
查看>>
vue随记
查看>>
Quick-cocos2d-x3.3 Study (十一)--------- 让物体从屏幕的外边移动到屏幕中指定位置...
查看>>
[转] 数据挖掘中易犯的几大错误
查看>>
Silverlight与WCF通信(二) :Silverlight通过netTcpBinding访问IIS宿主WCF
查看>>
Vue+elementUI创建“回到顶部”组件
查看>>
网页模板生产器
查看>>
3.0 Windows和Linux双系统安装(3)
查看>>
druid 配置监控页面和开启防火墙,spring
查看>>
石家庄的雾霾
查看>>
软件工程第一次作业
查看>>
xml文件开始部分中的xmlns:和xsi:schemaLocation
查看>>
面试题7:用两个栈实现队列和用两个队列实现一个栈
查看>>
扩展的使用
查看>>
【酷】JS仿FLASH效果的跳动下拉菜单
查看>>