首页 > 数据库 > MySQL > 正文

mysql怎样求交集

2024-07-24 12:33:47
字体:
来源:转载
供稿:网友
  在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如何求交集的方法了吗?

(编辑:武林网)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表