如何比较两个表的数据是否完全一致现在有两个DB,每个DB都有同样的表。如何根据用户指定的检索条件,判断两个
如何比较两个表的数据是否完全一致
现在有两个DB,每个DB都有同样的表。
如何根据用户指定的检索条件,判断两个DB中的相同表的数据是否完全一致?
[解决办法]
1、最简单的两个db的表做minus。
2、将数据按照固定顺序spool出来,然后对spool出来的数据做diff。
[解决办法]
按一定的顺序排序,直接做两个表的链接看看!
[解决办法]
- SQL code
可以直接用minus!
[解决办法]
两个表 A 和 表B,表结构一样,那么
select * from A
minus
select * from B
有结果出来,说明两个表的数据就不一样。
你现在是两个DB,那么从其中一个建一个database link 连接到另外一个上面就行了。
至于第二种方法,可以不学,能用数据库本身功能实现的就用数据库本身的功能。
[解决办法]
[解决办法]
参考这个帖子:
http://topic.csdn.net/u/20080605/15/168b4cc0-c82f-469b-838d-6a64f98cd9a3.html
[解决办法]
- SQL code
WITH a AS(SELECT 1 FROM dualUNION ALLSELECT 2 FROM dual),b AS(SELECT 1 FROM dualUNION ALLSELECT 3 FROM dual)(SELECT * FROM a MINUSSELECT * FROM b)UNION ALL(SELECT * FROM b MINUS SELECT * FROM a)--result:23
[解决办法]
假设在第一个db上建了dblink连接到第二个db上
create database link dblink_name connect to user_name identified by password using
连接字符串
select * from A
minus
select * from A@dblink_name
