怎么比较两个表的数据是否完全一致

如何比较两个表的数据是否完全一致现在有两个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 连接到另外一个上面就行了。


至于第二种方法,可以不学,能用数据库本身功能实现的就用数据库本身的功能。



探讨
我是个新手,希望大家能说得明白些。

[解决办法]
探讨
1、最简单的两个db的表做minus。

2、将数据按照固定顺序spool出来,然后对spool出来的数据做diff。

[解决办法]
参考这个帖子:
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