MySQL

LIMIT / OFFSET

取得件数の制限と開始位置のスキップ(MySQLでよく使われる構文)

解説

検索結果から取得する行数を制限(LIMIT)し、先頭から指定行数を読み飛ばす(OFFSET)ための構文です。MySQLでよく使われますが、PostgreSQLやSQLiteでも同様の LIMIT / OFFSET 構文が利用できます。

短縮記法とDB間の違い

  • MySQL独自の短縮形: LIMIT 開始位置, 件数(例: LIMIT 20, 10)という記法もサポートしています。
  • Oracle DBとの違い: Oracleでは LIMIT 句がサポートされておらず、FETCH FIRST n ROWS ONLY 構文を使用します。
構文
SELECT * FROM 表 LIMIT 件数 [OFFSET 開始位置];
具体例
SELECT * FROM items ORDER BY id LIMIT 10 OFFSET 20;

この構文を実際に書いて試してみませんか?

SQLエディタを開く