暂无图片
MySQL 怎么比较两个不同表内某个元素的大小?
我来答
分享
暂无图片 匿名用户
MySQL 怎么比较两个不同表内某个元素的大小?

MySQL 怎么比较两个不同表内某个元素的大小?

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
shunwahⓂ️

如果有时候需要使用 mysql 数据库,比较两个表中的元素是否全部相同,可以执行

找出A表中不存在于B表中的数据

方法一:利用not exists

select 字段 from 表A a where not exists(

select 1 from 表B b

where a.字段1 = b.字段1 and a.字段2 = b.字段2…

)

方法2:利用union all

select 字段 from

(select 字段 from 表A

union all

select 字段 from 表B

)group by 字段

having count(*)=1;

因为相同的数据分组之后count(*)是肯定大于1的

比较上述这两种方法:如果比较字段过多方法一种where条件书写相对复杂,但是方法一可以select出全部的字段,方法2中只能select出group by中的字段。

效率方面应该是方法一更加贴合实际应用,因为只需要对比主键

但我们只是需要临时比对一下两个表数据是否存在不相同时,或者主键是否存在不相同的,或者相同的(count(*)>1)我们就可以使用方法二更加的方便。

暂无图片 评论
暂无图片 有用 0
打赏 0
严少安
2022-10-25
👍‍
愤怒的蜗牛
2022-10-25
回答交流
Markdown


请输入正文
提交
相关推荐
my sql5.7版本bit字段值不准确
回答 4
暂无文字回复
oracle instr函数模糊查询 当第二个参数要匹配的字符串没有传的时候,查询不出来结果,怎么处理?
回答 2
不同的数据库,对于同一个函数,的确会有不一样的情况,你想让这个sql能查出结果,除非修改oracle的标准包,否则就只能换写法
mysql service启动时能指定配置文件吗 一台机器上装了多个不同版本的mysql 配置文件路径也不一样 要使用service 启停怎么配置
回答 1
mysqldmultidefaultsextrafile/etc/mym.cnf  这样去处理,自己定义mym。cnf。也能自己。mysqldsafedefaultsfile/et
MySQL A 有4个库,新增了从库B,做了主从,为什么A里面的库没有同步?
回答 1
那你io和sql两个线程现在是yes了吗?估计至少有一个是no。排除这些问题,自然就同步了。
mysql实现日期时间戳
回答 1
selectDATEFORMAT(NOW(),’%Y%m%d%H%i%s%f’);
mysql导入文件大,老是导入失败,需要从哪方面入手处理?
回答 3
先看看日志报的什么错呀
percona-xtrabackup-8.0.35-31-Linux-x86_64.glibc2.17.tar.gz 这个能否兼容centos 6.5下的mysql 8.0.18 ?
回答 1
Centos6.x的glibc一般是2.12Centos7.x的glibc一般是2.17安装包的对应的是2.17,安装过程中,应该会有兼容性问题
MySQL 中 有没有代替 not exists的方法?
回答 1
已采纳
selecta.XXax,b.XXbxfromaleftjoinbona.XXb.XXwhereb.xxisnull
MySQL在查询处理的哪个阶段创建查询的执行计划??
回答 4
已采纳
1.语法分析阶段:将SQL查询语句经词法和语法分析后变换为一颗查询树stselectlex传给优化器,并对SQL表达的语义进行检查。2.生成逻辑查询执行计划阶段:优化器在查询树中遍历每个关系,确定关系
什么软件可以收集mysql慢查询?
回答 1
如果只是收集的话,可以用filebeat