现在一个Oracle的查找语句如下:select a.* from (select rownum r,t.* from table1 t) a where r between 1000 and 2000 这个表table1有几百万条数据,我想分批把它们查找出来,但是我怕这个select rownum r,t.* from table1 t的字表会太大,导致内存不足?请问会不会出现这种情况,这条查询语句中,select rownum r,t.* from table1 t的结果会放在内存中吗?坐等高手回答。
会放到内存中的
table1 中没有自增长的字段吗?
如果没有应该加一个,否则你的数据库设计就存在问题,这是影响性能的根源
没。只有一个时间字段的索引。
这么点数据,我想查找一下,不会爆出错误的
(select rownum r,t.* from table1 t)你为什么不先在这括号里面增加条件搜索呢,这样效率会大大提高的