我必须在表中获取最新记录。为此,首先,我选择所有记录,然后订购它们并获取最新的100个记录。花费很多。我想知道这是更好的方法吗?
我正在使用Oracle 10g。
,如果您知道这些100个记录将始终符合标准,例如load_date> '01 -Jan-2012'
我想你在sql中做这一切?
SELECT * FROM (
SELECT *
FROM table
ORDER BY modified_date DESC
)
WHERE rownum <= 100;
您可以做的一件事是在" modified_date"上创建一个降落索引:
CREATE INDEX table_modified_date_desc_idx on table(modified_date DESC);
然后您的查询应使用此索引仅检索最新记录。如果不这样