• ベストアンサー

任意値を取得について

Oracleで、先頭からではなく、任意の範囲だけレコードを取り出したいが、 limitとoffsetのような方法がありますか。

質問者が選んだベストアンサー

  • ベストアンサー
  • MZ-80B
  • ベストアンサー率56% (46/81)
回答No.3

参考URLで各バージョン毎の動作と誤用について詳しく言及されています。

参考URL:
http://otn.oracle.co.jp/cgi-bin/non/msgview_r.cgi?communityid=otn-489965&bbsid=1&no=97577&view=9

その他の回答 (3)

回答No.4

解決策はMZ-80BさんのURLを参考にしていただくとして・・・ ROWNUMは抽出できた行に対して値が設定されます。 抽出できた行に対しROWNUMが1,2,3,4,・・・と振られていくわけです(抽出条件にはROWNUMの条件も当然含みます)。 ANo.2のような書き方の場合、データは抽出されません。 #ちょっと誤解を招く可能性があるため補足しました。 #ちょっとわかりにくいかな(^^; #ただの補足なのでポイント辞退

go991314
質問者

補足

SQL SERVERの場合は SELECT TOP 10 FROM 表; 任意値を取得することができますか、宜しくお願いします。

  • ham_kamo
  • ベストアンサー率55% (659/1197)
回答No.2

惜しいですね。 where rownum between 100 and 200 という感じです。

  • X-trail_00
  • ベストアンサー率30% (438/1430)
回答No.1

一応 rownum を使えばそれっぽくできますが。

go991314
質問者

補足

Where between ROWNUM >= 数値 and ROWNUM <= 数値 このような書き方ですか。

関連するQ&A