怎么比较两个表的数据是否完全一致
如何比较两个表的数据是否完全一致
现在有两个DB,每个DB都有同样的表。
如何根据用户指定的检索条件,判断两个DB中的相同表的数据是否完全一致?
------解决方案--------------------
1、最简单的两个db的表做minus。
2、将数据按照固定顺序spool出来,然后对spool出来的数据做diff。
------解决方案--------------------
按一定的顺序排序,直接做两个表的链接看看!
------解决方案--------------------
现在有两个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.****.net/u/20080605/15/168b4cc0-c82f-469b-838d-6a64f98cd9a3.html
------解决方案--------------------
- SQL code
WITH a AS (SELECT 1 FROM dual UNION ALL SELECT 2 FROM dual ),b AS (SELECT 1 FROM dual UNION ALL SELECT 3 FROM dual ) (SELECT * FROM a MINUS SELECT * FROM b) UNION ALL (SELECT * FROM b MINUS SELECT * FROM a) --result: 2 3
------解决方案--------------------
假设在第一个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