OracleのROWNUM(LIMITのかわり)【SQL】

OracleはLIMITの代わりにROWNUMを使う

Oralceでデータ抽出する際、「最初の〇行を取得する」には疑似列「ROWNUM」を使います。

MysqlではLIMITが使えますが、OracleではLIMITが使えないのでROWNUMを使います。

サンプルデータ

empno empname
A001 佐藤花子
A002 田中太郎
A003 加藤一
A004 青木花
A005 藤田学

例1. 疑似列ROWNUMを使う

empno empname
A001 佐藤花子
A002 田中太郎
A003 加藤一

ここでは副問い合わせで一旦empno順に並び替えます。すると疑似列ROWNUMが1から順番に振られます。疑似列ROWNUMは並び替えた順に振られる仮の番号です。

上位3件を取得したい場合、この疑似列ROWNUMを使って「ROWNUM <= 3」とすれば取得できます。これでMysqlのLIMITと同じことができました。

以上、OracleのROWNUMでした。