0

请问是否有提示先返回最新创建的数据?

示例此语句

Select * from table where rownum=>5000

有时新创建的行不在结果集中,并且

Select * from table where rownum=>5000 order by creation_date

如果按creation_time 或last_modified 排序,则返回时间过长。

所以我可以知道是否有办法提示 ORACLE 至少确保那些新插入的行在结果集中?

它不需要按任何顺序排列,只要新创建的行会出现在结果中即可。

我已经用尽了所有方法来使用 last_modified 或 creation_time 的顺序。

4

1 回答 1

0

首先,索引日期列。

其次,按降序指定 order by,因此最新日期首先出现。

第三,使用第一行提示,因为您实际上只想要快速的第一行,但如果您真的想要 5000 条记录,它不再只是第一行。您可以使用第一行提示传递所需数量的行,这允许 oracle 为您需要的任何数据量选择最佳方法。

第四,确保您拥有表和索引的最新统计信息。

于 2013-01-24T04:22:08.677 回答