OracleにLIMIT句は無い
まず前提として、OracleにはLIMIT句というものは存在しません。
そのかわり ROWNUM
という仮想カラムを使ってLIMIT句と同じようなことができます。
やり方
5レコードだけ取ってくるサンプル
SELECT *
FROM テーブル名
WHERE ROWNUM <= 5
ORDER BY との関係について注意
ROWNUMが採番された 後 にORDER BYされます。
逆ではないので注意。
ORDER BY の後に上位〇レコード取りたい時
サブクエリでORDER BYした後にROWNUMで絞り込む必要があります。
SELECT エイリアス名.*
(SELECT * FROM テーブル名 ORDER BY カラム名) エイリアス名
WHERE ROWNUM <= 5
蛇足
大量のレコードがあるテーブルに対して、インデックスを貼っていないカラムでWHERE絞り込みするとすっごい遅いです。
サンプルデータが見たいだけなら WHERE ROWNUM <= 〇
しとくと表示速いです。
参考サイトさん
バージョン
Oracle Database 11g Release 11.2.0.1.0 - 64bit Production