应该不少人都遇到过这样的问题吧, 在数据库中选取 位于min行和max行 之间的所有数据,
通常DQL 书写如下.
SELECT * FROM (
SELECT a,b,c,...,rownum rowcount FROM
where ... and rownum:min;
当数据达到数百万或者上千万后, 这个嵌套查询 的内部select的速度明显会随着 max的增大而变慢,
从而导致 取10-30 行和 取1000000 - 1000020 行的速度有差异,
做软件客户端的时候,让 客户觉得分页查询越往后越慢,
请问 这个尴尬的问题, 大虾们 有什么好的解决方案.
谢咯
[ 本帖最后由 bradshen 于 2008-4-5 21:59 编辑 ]
|