问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
墨值悬赏
匿名用户MySQL 怎么比较两个不同表内某个元素的大小?
如果有时候需要使用 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
墨值悬赏