mysql怎么求交集

青灯夜游
青灯夜游 原创
2022-04-12 15:08:16 8576浏览

在mysql中,可以利用“SELECT”语句和“INNER JOIN”关键字来查询交集,求交集数据,语法“SELECT 字段名 FROM 数据表1 INNER JOIN 数据表2 USING(字段名);”。

本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。

创建两个表

CREATE TABLE `object_a` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `oname` varchar(50) DEFAULT NULL,
  `odesc` varchar(50) DEFAULT NULL,
  `create_time` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=latin1

添加数据

CREATE TABLE `object_b` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `oname` varchar(50) DEFAULT NULL,
  `odesc` varchar(50) DEFAULT NULL,
  `create_time` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=latin1

添加数据

查询交集

SELECT a.oname,a.odesc FROM object_a a INNER JOIN object_b b ON a.oname=b.oname AND a.odesc=b.odesc

等价于

SELECT a.oname,a.odesc FROM object_a a INNER JOIN object_b b USING(oname,odesc)

结果如下



PS:别的数据库可以试试这种写法

SELECT oname,odesc FROM object_a 
INTERSECT
SELECT oname,odesc FROM object_b

【相关推荐:mysql视频教程

以上就是mysql怎么求交集的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。