ケース 2 の主な問題は、多くの場合、クエリ結果セット全体を取得して、前にソートする必要があることです。 最初の N 行を返すことができます。 ただし、ORDER BY 列にインデックスが付けられていて、Oracle がインデックスを使用してソートを回避できる場合を除きます。複雑なクエリと大規模なデータ セットの場合、これには時間がかかる場合があります。ただし、速度を改善するためにできることがいくつかあります:
<オール>編集:
もう 1 つの考え:現在、可能なレポートをユーザーに提示しています。 数千または数百万の行を返しますが、ユーザーが実際にそれらすべてをページングすることは決してありません。より少量のデータを選択するように強制することはできませんか。選択した日付範囲を 3 か月 (またはその他) に制限することによって?