读书人

关于表比较有关问题

发布时间: 2013-01-11 11:57:35 作者: rapoo

关于表比较问题
如何高效判断2张表中的数据的差异。
注:2张表字段相同,字段类型相同,顺序相同。 -。- 总之结构都一样,但是数据不一定一样. 而且表比较庞大、 不可能一个字段一个字段的判断
[解决办法]
数据库层minus进行差集运算
OS层面的diff
[解决办法]
比如:

select * from t1 where not exists(select * from t2 where  t1.id = t2.id)


Where后面跟的是相同的记录查询条件。。。。
[解决办法]
两表进行hash join 比较,效率最好,
大概这样:
select * from t1 left join t2 on t1.a = t2.a
where t2.a is null;

使用minus的问题:
1.会过滤重复的数据。
2.内部会做排序,大数据量的情况下,效率不好。


[解决办法]
minus掉重复数据的话,那就把重复数据在查一遍呗。。

读书人网 >oracle

热点推荐