日期:2014-05-17  浏览次数:20921 次

关于oracle大数据量的表的查询问题
有一个八十万条左右的数据表,和一张差不多八十万条的关系表。
要根据关系表的关系对数据表的数据进行修改。每一条数据表都要到关系表中查询相应的关系之后才能对数据表中的数据进行更新,因为数据表中的数据没有重复的。
目前的做法是对两张表的主键建立索引,用游标遍历数据表,逐条进行修改。
oracle 大数据 索引

------解决方案--------------------
有一次检查时我做过这个工作,我大体上是这样解决这个问题的:一开始我用的你说的目前的方法,但是时间太长了,我的数据可能比你的还多。我是这样做的希望对你有帮助:一是用数据较少的或是分析的较少的那个表做个主要的关系表。第二种方法我是用的把数据分成了几部分(这个方法试过的)。我最后是用的第一种方法,具体想不清了,但是换了连接后,速度至少是快了十们以上!所以你还是从这两个表的数据入手。
最后一点请给我结贴时给我点分,我看看分是怎么来的,呵呵!
------解决方案--------------------
引用:
Quote: 引用:

速度快了十倍以上

OK,多谢,虽然我不用连接,因为在关系表中是树形结构,直接连接的话数据不对,目前用索引和游标来做速度也能有一定的提升。

树形结构也是可以连接的
最好说说你具体的表和数据和要求
------解决方案--------------------
楼主先把大表拆分成几个小表,然后对下表进行批量的更新,然后再合并,这会快点。