如何比较pl / sql块中的两个不同表
表A- T_tABLE1
BIZDAY DATE
ACID NUMBER(12,0)
TYPE VARCHAR2(10 CHAR)
ADJDATE DATE
SOURCE VARCHAR2(20 CHAR)
DATEUPDATED DATE
表2:
BIZDAY DATE
ACID NUMBER
TYPE VARCHAR2(20 BYTE)
ADJDATE DATE
SOURCE VARCHAR2(20 BYTE)
DATEUPDATED DATE
答案 0 :(得分:0)
获取差异的计数
select count(*)
from
(
( select * from table1
minus
select * from table2 )
union all
( select * from table2
minus
select * from table1 )
);
将告诉你table1中有多少行不在table2 + table2中而不在table1
中获取实际数据比较
select *
from
(
( select * from table1
minus
select * from table2 )
union all
( select * from table2
minus
select * from table1 )
);
另一种方法:
在11gR1之前使用DBMS_RECTIFIER_DIFF
从11gR1或以上使用DBMS_COMPARISON
答案 1 :(得分:0)
如果表具有主键,则还可以使用完全外部联接来查找两个表之间的差异。请参阅此fiddle。