使用大型表的多个联接进行分页

时间:2019-11-16 14:17:05

标签: oracle

在oracle 12c中,尝试通过执行多次联接和过滤数据来获取数据,然后使用rownum执行分页时,首先对表进行联接和过滤,然后对结果集按order by排序,然后提取数据。因此,在大量行的情况下,所有联接操作都非常昂贵。即使我们只需要一百万个结果集中的100个,仍然需要准备所有数据。有什么想法可以简化这个过程吗?

1 个答案:

答案 0 :(得分:0)

如果只需要一部分数据,则可以使用FIRST_ROWS(n)提示查询。

Improved Response Time with FIRST_ROWS(n) Hint for ORDER BY Queries

  

如果要在尽可能短的时间内获得第n个行,请使用FIRST_ROWS(n)提示。