mysql怎么求交集

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

mysql怎么求交集

本教程操作环境: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怎么求交集的详细内容,更多请关注其它相关文章!