罗田县升平网络工作室,一家专业从事网站建设的工作室

资讯论坛

 找回密码
 加入论坛

快捷登录

回帖中禁止出现的内容,违者将被直接永久禁止访问,删除ID处理 :1.违反法律法规 ,包括但不限于出现带有政治、色情、暴恐信息等内容;2.恶意攻击内容,包括但不限于:恶意攻击党和政府、辱骂跟帖者、攻击主题发布者、不服从论坛管理、挑衅管理者、挑战版规等;3.广告、推广内容,尤其出现带有病毒、恶意代码、广告链接等内容,包括但不限于:QQ号、文字QQ号、微信号、手机号、文字手机号、第三方网址、单位公司名称、网站名称等;4.回帖贴出该主题隐藏资源链接或其它主题隐藏资源链接的行为。
查看: 821|回复: 0

mysql实用技巧之比较两个表是否有不同数据的方法分析

[复制链接]

647

主题

663

帖子

773

积分

社区达人

积分
773
发表于 2020-1-26 23:30:21 来自手机 | 显示全部楼层 |阅读模式
本文实例讲述了mysql比较两个表是否有不同数据的方法。分享给大家供大家参考,具体如下:
在数据迁移中,我们经常需要比较两个表,以便在一个表中标识另一个表中没有相应记录的记录。
例如,我们有一个新的数据库,其架构与旧数据库不同。我们的任务是将所有数据从旧数据库迁移到新数据库,并验证数据是否正确迁移。要检查数据,我们必须比较两个表,一个在新数据库中,一个在旧数据库中,并标识不匹配的记录。
假设有两个表:t1和t2。使用以下步骤比较两个表,并确定不匹配的记录,按着常用的思路就是,我们先查t1,完事呢,拿着数据结果集来循环,一条一条的去另一张表中查询,能查到数据,就是正确的,查询不到,就是数据有丢失的现象。
如果真的这样的话,那你可就真的是啊,too young too simple了。这次呢,咱们来介绍一个比较简单的数据对比方案,那就是使用union all关联两张表,完事使用临时表或者说派生表的方式来进行数据对比。先来看下union all的sql实例吧:
  1. SELECT t1.pk, t1.c1FROM t1UNION ALLSELECT t2.pk, t2.c1FROM t2
复制代码
完事咱们就先来建立两张表,再插入一些数据,完事就可以进行测试了,先来看建表:
  1. CREATE TABLE t1( id int auto_increment primary key,  title varchar(255) );CREATE TABLE t2( id int auto_increment primary key,  title varchar(255),  note varchar(255));
复制代码
完事先在t1中插入数据:
  1. INSERT INTO t1(title)VALUES('row 1'),('row 2'),('row 3');
复制代码
再来在t2中插入数据:
  1. INSERT INTO t2(title)VALUES('row 1'),('row 2'),('row 3');
复制代码
好,咱们接下来就是要使用派生表的方式来对比数据了哦:
  1. SELECT id,titleFROM (  SELECT id, title FROM t1  UNION ALL  SELECT id,title FROM t2) tblGROUP BY id, titleHAVING count(*) = 1ORDER BY id;
复制代码
运行之后当然是没有任何返回数据的,因为它们是没有什么差别的。不着急哈,咱们再来在t2表中插入一行数据:
  1. INSERT INTO t2(title,note)VALUES('new row 4','new');
复制代码
完事我们再次比较两个表中的title列的值,因为新行是不匹配的行将会返回,我们来看下结果:
  1. mysql> SELECT id,titleFROM (  SELECT id, title FROM t1  UNION ALL  SELECT id,title FROM t2) tblGROUP BY id, titleHAVING count(*) = 1ORDER BY id;+----+-----------+| id | title   |+----+-----------+| 4 | new row 4 |+----+-----------+1 row in set
复制代码
好啦,这次小技巧就到这里了哦。
更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL查询技巧大全》、《MySQL常用函数大汇总》、《MySQL日志操作技巧大全》、《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》及《MySQL数据库锁相关技巧汇总》
希望本文所述对大家MySQL数据库计有所帮助。

来源:http://www.jb51.net/article/177549.htm
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
打赏鼓励一下!
回复

使用道具 举报

回帖中禁止出现的内容,违者将被直接永久禁止访问,删除ID处理 :1.违反法律法规 ,包括但不限于出现带有政治、色情、暴恐信息等内容;2.恶意攻击内容,包括但不限于:恶意攻击党和政府、辱骂跟帖者、攻击主题发布者、不服从论坛管理、挑衅管理者、挑战版规等;3.广告、推广内容,尤其出现带有病毒、恶意代码、广告链接等内容,包括但不限于:QQ号、文字QQ号、微信号、手机号、文字手机号、第三方网址、单位公司名称、网站名称等;4.回帖贴出该主题隐藏资源链接或其它主题隐藏资源链接的行为。

浏览排行

(40345)2019-11-5 公共云钱包资金盘骗局揭秘: 网络传销+原始股骗局合体!

(23466)2019-12-20 12月17日 邓智天法院直播庭审疑问全解答!

(22056)2019-12-1 环保币GEC资金盘骗局最新消息: 即将崩盘!

(18282)2019-11-9 巨胸肥臀大长腿,嫩模糯美子真人COS不知火舞福利污图

(16865)2018-12-24 罗田县人民法院公布【第五批失信被执行人名单】 ...

(16057)2019-11-3 曝光!PTFX已经崩盘跑路,投资者血流成河!

(14119)2019-8-7 湖北电力网上缴费,支付宝绑定户号的初始密码是什么?

(13849)2018-10-17 罗田县人民政府“12345”市民服务热线服务指南

(12194)2019-12-11 公安定性了, 趣码是非法传销! 趣码怎么退回365元?

(12011)2019-12-15 满足你对女同事的幻想 风骚秘书阿朱销魂眼神勾魂摄魄

最新发表

[升平网络工作室]2026-4-24 汪湘云到江夏区对接“双20”帮扶工作

[升平网络工作室]2026-4-24 [2026-04-24]罗田天气预报

[升平网络工作室]2026-4-23 周黎主持召开城市工作调研会

[升平网络工作室]2026-4-23 [2026-04-23]罗田天气预报

[升平网络工作室]2026-4-22 周黎调研城区重点项目建设工作

[升平网络工作室]2026-4-22 [2026-04-22]罗田天气预报

[升平网络工作室]2026-4-21 罗田县气象局关于开展2026年度雷电防护装置安全性能定期检测的公告

[升平网络工作室]2026-4-21 2026罗田春季全民健康跑圆满举行

[升平网络工作室]2026-4-21 [2026-04-21]罗田天气预报

[升平网络工作室]2026-4-20 罗田县政府招商组举行2026年招商引资工作推进会

QQ|Archiver|手机版|小黑屋|资讯论坛BBS.SPW8.CN ( 鄂ICP备2021011341号-3 )|网站地图


手机扫一扫继续访问
[免责声明]
本站系本网编辑转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。
如涉及作品内容、版权和其它问题,请在30日内与本网联系,我们将在第一时间删除内容!
[声明]本站文章版权归原作者所有 内容为作者个人观点 本站只提供参考并不构成任何投资及应用建议。

进入社区 | 发表新帖 | 百度收录 |
技术提供:罗田县升平网络工作室
站长Email:kefu@spw8.cn
投诉电话(刮开查看):15374567400

GMT+8, 2026-4-24 22:45 , Processed in 0.758396 second(s), 30 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表