SQLで指定した件数のみ取得する場合、MySQLやPostgreSQLではLIMIT句を使用します。
OracleではLIMIT句は使用できないのでROWNUMを使用します。
使用例
- サンプルテーブル「goods」

- クエリー(SQL)
クエリーの最後にLIMIT(取得したいレコード数)を指定することで指定した件数のみ取得することが出来ます。
SELECT * FROM goods ORDER BY type_code LIMIT(3);
Oracleの場合、ROWNUMを指定しただけではORDER BYでソート後の状態で取得ができないので副問合せで一度ソート後にROWNUMを指定することで指定した件数で取得することが出来ます。
SELECT * FROM (SELECT * FROM goods ORDER BY type_code) WHERE ROWNUM <= 3;
- 出力結果


