- - PR -
SQLの結果を分割して取得する方法について
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2007-01-18 11:32
ORACLE 7.3.4を使用しています。
SQLの結果を取得する際に、大量データの場合、 データを分割して取得したいと考えているのですが、 良い方法が見当たりません。 例えば10,000件のデータを表示する際に、 「1〜1,000」「1,001〜2,000」・・・のように、 必要な箇所のみ取得したいと考えております。 -------------------------- SELECT COL1,COL2 FROM ( SELECT COL1,COL2,CEIL(ROWNUM/1000) R_NUM FROM TBL1 ) WHERE R_NUM = 2 ORDER BY COL1 -------------------------- このSQL文で「1,001〜2,000件」を取得出来ますが、 全件を取りに行った後に、必要な情報を抽出しているので、 効率が良いとは思えません。 大変恐縮ですが、効率よく必要な情報を取得できる方法を ご存知の方がおられましたら、ご教授願います。 よろしくお願いします。 |
|
投稿日時: 2007-01-18 13:18
Oracleだとこうするしかないような気がします。
そもそも大量データだった場合は検索条件を見直させる用にするのではだめですか? 見せ方にもよるかも知れないけれど10000件のデータなんて全部見ないだろうし。 SQLだけの問題ならここよりは Database Expert 会議室の方が良いのではないでしょうか。 _________________ かるあ のメモ と スニペット |
|
投稿日時: 2007-01-18 13:46
お返事ありがとうございます。
以前こちらの会議室で質問させて頂きまして、 同じくスレッドを立ててしまいました。 Database Expert 会議室の方が適切ですよね。 移動する事にします。 本来なら検索条件で1000件未満に絞って表示するべきだと思いますが、 事情により、大量データを表示する必要がありまして。 お返事ありがとう御座いました。 |
1